У меня есть домен, который я называю <domain>
и ip звонок <ip>
и порт <my-local-port>
, я не использую nginx на моем сервере (dns привязан к успеху моего сервера), моя проблема в том, что обратный прокси ws: // protocole на моем сервере, я отправляю свой запрос по двум ссылкам:
https://<ip>:<my-local-port>
ws://<ip>:<my-local-port>
для https я настраиваю nginx как:
server {
listen 443;
server_name <domain> www.<domain> ;
location / {
proxy_pass http://localhost:<my-local-port>;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
я связываю https://<domain>
в мой локальный порт <my-local-port>
.
как я могу связать ws://<domain>
в местный порт <my-local-port>
?
Сначала определите восходящий веб-узел:
upstream websocket {
server <ip>:<my-local-port>;
}
Затем сервер для обновления http-соединения до websocket:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 8020;
location / {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
}
}
}