То, что я хочу сделать, это прокси каждую инициализацию websocket на "ws://localhost:8081"
, а остальную часть трафика прямо на http://localhost:80801
Я получил его с использованием флага [P]
, однако не рекомендуется делать этотаким образом, поскольку он не использует пул соединений.
Идея состоит в том, чтобы переписать запрос на /websocket
, если установлен заголовок, а затем, если url равен /websocket
proxypass к конечной точке ws.
Однако это не работает для WS (отлично работает для http)
#rewrite for websockets
RewriteEngine On
LogLevel alert rewrite:trace8
RewriteCond "%{HTTP:Upgrade}" "websocket"
# RewriteRule "" "ws://localhost:8081" [P] works via proxy like that
RewriteRule "" "/websocket" [L]
ProxyPass /websocket "ws://localhost:8081"
ProxyPassReverse /websocket "ws://localhost:8081"
ProxyPass / http://localhost:8081/
Что я делаю не так?