Erro WebSocket no estabelecimento da conexão: net :: ERR_CONNECTION_CLOSED
Estou recebendo esse erro ao tentar estabelecer umwss
conexão com meu servidor:
Conexão da WebSocket com 'wss: // mydomain: 3000 /' falhou: Erro no estabelecimento da conexão: net :: ERR_CONNECTION_CLOSED
Atualmente, tenho uma configuração de host virtual apache2 para escutar solicitações nas portas 443 e 80:
<VirtualHost *:80>
ServerName otherdomainname.co.uk
ServerAlias www.otherdomainname.co.uk
RewriteEngine On
RewriteRule ^/(.*)$ /app/$1 [l,PT]
JkMount /* worker2
</VirtualHost>
<VirtualHost _default_:443>
ServerName otherdomainname.co.uk
ServerAlias www.otherdomainname.co.uk
RewriteEngine On
RewriteRule ^/(.*)$ /app/$1 [l,PT]
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
<Location />
SSLRequireSSL On
SSLVerifyClient optional
SSLVerifyDepth 1
SSLOptions +StdEnvVars +StrictRequire
</Location>
JkMount /* worker2
</VirtualHost>
Como você pode ver, ele usa o JkMount para passar a solicitação ao Tomcat, que serve a página da Web corretamente em HTTP e HTTPS.
Quando visito o site usando o protocolo HTTP na porta 80, uma conexão WebSocket pode ser feita usando ows
protocolo.
Quando visito o site usando o protocolo HTTPS na porta 443, o site é veiculado corretamente, mas nenhuma conexão WebSocket é feita usandowss
.
Estou usando o módulo node.js "ws" para fornecer o servidor WebSocket:
var WebSocketServer = require('ws').Server
, wss = new WebSocketServer({ port: 3000 }),
fs = require('fs');
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('received: %s', message);
ws.send(message);
ws.send('something');
});
Por que não consigo conectar com êxito ao servidor WebSocket usando owss
protocolo sobrehttps
?