Я пытаюсь подключить nginx в контейнере 1 к php-fpm, на котором запущен WordPress в контейнере 2 на порту 9000. Кажется, это работает для динамически генерируемого контента, например, постов, но статический контент, такой как CSS, JS или изображения, возвращает ошибку 404. Что может быть причиной этого?
Обратите внимание, что первый блок «server» предназначен для перехвата всех не-HTTP-запросов и перенаправления их на HTTPS, тогда как второй блок предназначен для «перехвата всех» запросов, отправленных «mysite.com».
Спасибо,
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
listen [::]:80;
server_name _;
return 301 https://$host$request_uri;
}
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name localhost;
ssl_certificate /etc/ssl/cert.pem;
ssl_certificate_key /etc/ssl/privkey.pem;
ssl_session_cache shared:SSL:1m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root /usr/local/www/nginx;
index index.html index.htm;
}
}
server {
server_name mysite.com
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
ssl_certificate /etc/ssl/cert.pem;
ssl_certificate_key /etc/ssl/privkey.pem;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
set $my_https $https;
if ($http_x_forwarded_proto = 'https') {
set $my_https 'on';
}
root /var/wordpress;
fastcgi_pass 192.168.10.6:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/wordpress$fastcgi_script_name;
include fastcgi_params;
}
}
}