У меня есть HAProxy, который уже перенаправляет и балансирует запросы HTTP / S на серверы приложений в бэкэнде (я уже установил сертификат на сервере).
Я хочу добавить функциональность в HAProxy что он сможет перенаправлять запросы WSS (а не WS) на другой веб-сайт (wss: //echo.websocket.org/) Я пока не добился успеха.
Это то, что haproxy.cfg содержит:
интерфейс lbalancer
связывание *: 80
связывание *: 8080
включение статистики
статистика uri / haproxy? stats
default_backend api-backend
acl a1 dst_port 8080
внешний интерфейс lbalancer-ssl
bind *: 443 ssl crt /etc/ssl/xip.io /xip.io.pem
reqadd X-Forwarded-Proto: \ https
Включение статистики
stats uri / haproxy? stats
acl is_websocket hdr (Обновление) -i WebSocket
use_backend websocket, если is_websocket
default_backend api-backend
acl a1 dst_port 8080 * 103 7 *
бэкэнд API-бэкэнд
balance source
mode http
server app0 <ip address>:8080 check
server app1 <ip address>:8080 check
бэкэнд websocket
reqirep ^Host:\ .* Host:\echo.websocket.org
server ws1 echo.websocket.org sslnone