0

私はかなり長い間 node.js と socket.io を使用しています。

奇妙な問題が発生しました。以前は、ノードとソケットサーバーを実行するために、ほとんどの場合、3000、4001、8888 などの長いポートを使用していました。私は何の問題にも直面しませんでした。

ただし、ポートを 80 に移動すると、次のエラーが発生します-

WebSocket ハンドシェイク中のエラー:「接続」ヘッダーの値が「アップグレード」ではありません

Chrome でページを実行しているときにのみ、このエラーが発生します。このアプリを Amazon AWS でホストしています。localhost では正常に動作しますが、本番環境ではポート 80 でエラーが発生します。

これは、dev および 80 以外のポートで動作するため、私のコードとは何の関係もないと思います。

また、ソケット通信が xhr-polling と json-polling に落ちることも確認しています。80 以外のポートでは、websocket は正常に動作します。

何が問題なのかわからない。他のブラウザでも同じエラーは発生しませんが、ソケット接続も発生しません。

nginx やその他のロード バランサーは使用していません。

4

0 に答える 0