私のnodejsアプリケーションでsocket.ioを使用できるようにするには、apxとproxyngを設定しようとしています。私は追加する必要がある他に何Socket.io with apache proxy
socket = io.connect("https://example.com",{path:'/tools/socket.io'});
socket.on("connect", function() {
console.log("socketio Connected to server!");
});
:
WebSocket connection to 'wss://example.com/tools/socket.io/?EIO=3&transport=websocket&sid=eOGwJSC14TTWhHRMAAAR' failed: Error during WebSocket handshake: Unexpected response code: 400
HERESに私のApacheの設定:
<VirtualHost *:443>
ServerName example.com
ServerAlias example.com
#SSLRequireSSL
SSLProtocol all -SSLv2 -SSLv3
SSLCompression off
SSLHonorCipherOrder on
SSLEngine on
SSLCertificateFile /etc/ssl/main.pem
SSLCertificateKeyFile /etc/ssl/dec_ssl.key
SSLCertificateChainFile /etc/ssl/sub.class1.server.ca.pem
SSLCACertificateFile /etc/ssl/main.pem
SSLProxyEngine On
ProxyPreserveHost On
ProxyRequests off
</VirtualHost>
<Location /tools/>
ProxyPass http://localhost:8181/
ProxyPassReverse http://localhost:8181/
</Location>
そして、ここでは、クライアント側のコードですが、私は、クライアント側でこのエラーメッセージを受け取りますこのエラーを取り除くためにApacheの設定に?
EDIT:私のApacheのバージョン:Serverバージョン:Apacheの/ 2.4.6(CentOSの)
socket.ioサーバーが8181でリッスンしていますか?あなたはそれを直接打つことができますか? –
あなたのApacheエラーログをチェックしましたか? – jcaron
@ M.Babcock、はい、サーバーは8181で動作しています。私はURLからsocket.io.jsを取得できます。https://example.com/tools/socket.io/socket.io.js – hs2d