web-dev-qa-db-ja.com

WebSocketをポートにリダイレクトしますか?

つまり、C++のWebSocketサーバーがあります。これは、完全にスタンドアロンのエンティティです。ヘッダーの解析、受信、送信をすべて独自に処理し、ポートを直接リッスンします。

問題は、Apacheと一緒にサーバー上で実行する必要があることです。これは、少し問題です。さて、ここにmod_proxyに関連する同様の問題の解決策がありましたが、Apacheがそれを知る前に、おそらくiptablesを使用して、WebSocket通信を傍受してリダイレクトできることを望んでいます。

したがって、問題は、chat。mysite.net宛てのトラフィックをポート8080などのWebSocketサーバーに転送し、mysite.netに向かう他のトラフィックをApacheに期待どおりに進めることは可能ですか?

2
DigitalMan

これは実際には非常に簡単です。 ws://mysite.com:8080にあるサーバーにアクセスするようにクライアントをコーディングするだけです。 WebSocketがポート80を使用できると宣伝しているので、ポート80が使用できないことを知って非常に驚きました必要

2
DigitalMan

申し訳ありませんが、iptablesはhttpプロトコルを話さない/理解しないため、iptablesでは不可能です。誰かがip_conntrack_httpを記述して、これが実際に機能するようにする必要があります(ftp conntrackthingieに似たもの);-)それまでは、おそらくmod_proxyまたはnginxでApacheを使用する必要があります。

1
FINESEC