У меня есть приложение wordpress и django с конфигурацией nginx, как я описываю ниже:
# django
server {
listen 80;
server_name domain.com;
location /static/ {
alias /path/to/static/;
}
location / {
proxy_pass http://unix:/path/to/gunicorn.sock;
}
}
# wordpress
server {
listen 80;
server_name blog.domain.com;
root /path/to/wordpress;
index index.html index.php;
location /{
index index.php;
try_files $uri $uri/ /index.php?$args;
}
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
}
URL на данный момент
эта конфигурация работала правильно, но я хочу настроить nginx, чтобы wordpress мог работать как подкаталог domain.com/blog/ из djanggo с конфигурацией только одного порта
URL, который я ожидал
Вам нужно два location {}
блоки внутри одного server {}
блок, указывающий на django с proxy_pass
и еще один, указывающий на wordpress. Вы все еще можете оставить второй server {}
блок, обслуживающий blog.domain.com
сайт.