Назад | Перейти на главную страницу

Конфигурация nginx для wordpress, которая работает как подкаталог django

У меня есть приложение 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 сайт.