Я работаю над прокси-сервером Apache для WebSockets, и соединение отлично работает на Chrome и Safari Mobile, но Firefox возвращает 200 Ok Status и отключается.
Рассматриваемый сервер - это сервер Centos 7, на котором работает Apache ивеб-сокет предоставляется NodeJS.
<VirtualHost *:443>
ServerAdmin webmaster@example.com
ServerName alpha.example.com
ServerAlias www.alpha.example.com
DocumentRoot public_html/
ErrorLog logs/error.log
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
SSLProxyEngine On
Include cert.pem
SSLCertificateKeyFile privkey.pem
SSLCertificateChainFile chain.pem
ProxyRequests Off
RewriteEngine On
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://localhost:8080%{REQUEST_URI} [P]
ProxyPass /ws http://127.0.0.1:8080
ProxyPassReverse /ws http://127.0.0.1:8080
</VirtualHost>
Chrome подключается к серверу, и я могу отправлять события обоими способами.Firefox пытается установить соединение, но затем сразу закрывается со статусом 200 Ok, но регистрирует Firefox can’t establish a connection to the server at wss://alpha.example.com/.
Firefox, однако, может загружать запросы прокси как https://alpha.example.com/ws