Правильный способ прокси-порта / порта для перенаправления приложений между 3 серверами Linux с NginX
Я создаю видеозвонок RTC с шлюзом janus через веб-сокеты. Нужны предложения о том, как прокси пройти 3 сервера. Я не знаю, правильное ли имя для этого случая - перенаправление портов
У меня есть 3 сервера: A -> B -> C Шлюз Janus установлен на сервере C на порт 8080, затем я настраиваю Nginx на сервере B, чтобы прокси-сервер передавал этот C:8080 следующим образом
location /janus {
proxy_pass http://C:8080;
}
тогда на сервере A конфигурация должна быть такой:
location /janus {
proxy_pass http://B/janus;
}
Затем я могу получить доступ к C:8080 по этому URL-адресу: http://A/janus. Это работает. Могу ли я использовать тот же подход для запуска веб-сокета через прокси-сервер? конфигурация должна быть такой на сервере B:
map $http_upgrade $connection_upgrade{
default upgrade;
'' close;
}
upstream Cwebsocket{
server C:8188;
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
location /Bwebsocket{
proxy_pass https://Cwebsocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
Затем я настраиваю это на сервере A:
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
location /Awebsocket{
proxy_pass http://B/Bwebsocket;
}
}
Это правильный способ proxy_pass между серверами специально для websocket? Или я должен использовать другой подход в этом случае? CMIIW
На самом деле неэффективно использовать 3 сервера, но эта топология вроде политики на моем месте. Нужна помощь, ребята
Заранее спасибо:)