Nginx Обратный прокси для нескольких веб-сокетов - PullRequest
0 голосов
/ 19 апреля 2020

Я размещаю веб-сервер, который использует nginx в качестве обратного прокси-сервера для нескольких приложений, использующих веб-сокеты.

Для одного приложения - мне нужно nginx, чтобы пользователь ввел http://my_domain.com / app1 и будут направлены на http://127.0.0.1: 7000 / xyz / на сервере.

Следующая конфигурация nginx позволяет достичь этого.

server {

server_name my_domain.com;

location /app1/ {
    proxy_pass http://127.0.0.1:7000/xyz/;

    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $server_name;

}

}

HTTP-запрос направлен правильно, и я вижу, что страница загружается правильно, за исключением связи через веб-сокеты.

Когда я настраиваю nginx следующим образом :

location / {
    proxy_pass http://127.0.0.1:7000/;

    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $server_name; 
}

Это сопоставляет приложение со следующим URL-адресом http://my_domain.com / xyz / и связь через веб-сокеты работает правильно.

В чем проблема с этой конфигурацией

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...