Я работаю над проектом веб-сокета и хочу, чтобы ковбойский сервер веб-сокета прослушивал порт 8080, но пересылал сообщения на другой порт. Могу ли я сделать это ? любая помощь приветствуется
Ковбой вперед в порт
Ответы (1)
что вы подразумеваете под пересылкой сообщений на другой порт? обработчик cowboy обрабатывает сообщения, поступающие на ваш веб-сокет. Вы можете взять их и перенаправить куда угодно. Однако я думаю, что на самом деле вы ищете доверенное лицо, которое стоит перед вашим ковбоем. Если это так, вы должны рассматривать nginx как прикрытие. После того, как вы установили его, вы можете предоставить эту конфигурацию:
http {
...
server {
listen 443
...
location ~ ^/myws/
{
proxy_pass http://127.0.0.1:8080 ;
proxy_http_version 1.1 ;
proxy_set_header Upgrade $http_upgrade ;
proxy_set_header Connection "upgrade" ;
proxy_connect_timeout 60 ;
proxy_read_timeout 86400 ;
proxy_send_timeout 86400 ;
proxy_ignore_client_abort off ;
proxy_redirect off ;
}
...
}
....
}
это позволит вам запускать прослушивание ковбоя на любом порту, который вам нравится (8080 в вашем примере), позволяя nginx позаботиться о ваших потребностях SSL при пересылке запросов веб-сокета ковбою. Клиент может подключить @
wss://{ваш сервер}/myws
Если вам не нужен SSL адрес будет
ws://{ваш сервер}/myws
и порт прослушивания в приведенной выше конфигурации должен измениться на 80.