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

Удаление порта из перенаправления nginx

У меня есть домен, поэтому на www.mysite.com запущено приложение Django. На этом сервере я создал блог с WordPress. www.mysite.com/blog

Приложение Nginx Django:

upstream django {
    server 127.0.0.1:8001;
}

server {
    listen 80;

    location /blog {       
       proxy_pass http://127.0.0.1:8000;  
    }
}

Nginx WordPress:

server {
    listen: 8000;
    root /var/www/html/blog;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    [......]

}

Если я наберу www.mysite.com/blog, покажите мне страницу 404. Если я наберу www.mysite.com:8000, покажите мне индекс WordPress. Как удалить порт ": 8000" из URL-адреса, оставив wwww.mysite.com/blog и показать мне индекс WordPress ??

Я думаю, что ответ на то, что вы ищете, в proxy_redirect вариант после proxy_pass.

Этот пример конфигурации nginx может быть полезен: (Взгляните на строку перенаправления прокси)

location /one/ {
proxy_pass     http://upstream:port/two/;
proxy_redirect http://upstream:port/two/ /one/;

Я думаю, что добавление этого должно помочь:

proxy_redirect http://127.0.0.1:8000 /blog;

Вы можете найти полную документацию и примеры в nginx документация