同じサーバーに 2 つの異なるアプリケーションがあります。そのうちの 1 つはポート 80 (mydomain.com) で実行され、もう 1 つはポート 443 (sub.mydomain.com) で実行され、ワイルドカード証明書があります。
最初のアプリケーションは情報提供のみを目的としており、websockets のサポートは必要ありません。2 番目のアプリケーションには、セキュアな WebSocket サポート (wss プロトコル) が必要です。
engineyard クラウド上の nginx サーバーを使用して、Rails アプリ用に juggernaut gem (websockets 用) をセットアップしようとしましたが、問題が 1 つあります。Engineyard クラウドは、80 と 443 の 2 つの開いているポートのみを提供します。 8080)。
HAProxy を使用してみましたが、安全でない websocket のみを使用する場合はうまくいきますが、安全な websocket をサポートする必要があります。この場合、HAProxy を使用するよりも、STunnel のようなものを使用して https リクエストをトンネリングする必要がありますが、テストすると、サーバーの動作が数倍遅くなることがわかりましたが、まだセキュア ソケットを使用できませんでした。繋がり :(
多分私は何か間違ったことをしていますか?複数のアプリケーション用に nginx をセットアップする方法 (そのうちの 1 つが https 経由で動作するはずです) と、2 つのポート (80 と 443) のみを使用して Websocket を保護する方法を誰かが教えてくれるでしょう。
psまた、node-http-proxyを使用しました。この場合、さまざまなnginxアプリケーションのプロキシを設定できましたが、Webソケットを実行できません(nginxを介した「ハンドシェイク」でのみ発生し、「スイッチングプロトコル」では発生しません)