私はこのようないくつかの質問があることを知っていますが、私はサーバーのルートにないプロジェクトのために私の問題を解決する1つを見つけることができません。 は、私は次のような状況があります。socket.io(ルートにないプロジェクト)用のApacheのプロキシ設定
- 0.0.0.0/project1
- 0.0.0.0/project2
- ...
I:私はのようないくつかのプロジェクトを実行しているApacheサーバを持っていますnode.jsプロジェクトを追加して、それをnodeprojectとしましょう。 ProxyPassでは、0.0.0.0/nodeprojectへのリクエストを0.0.0.0:8080に渡しています。ここでは、自分のノードサーバーが実行されています。これはsocket.ioのwebsocketの設定を除いてすべて正常に動作しています。私の/etc/apache2/apache2.confファイルでは、私はプロキシを行うためにこのコードを配置しました。 (mod_proxy_wstunnelはenabeldです)基本的にはhereからコピーしました。
ProxyRequests off
ProxyVia on
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/nodeproject/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule /(.*) ws://localhost:8080/$1 [P,L]
ProxyPass /nodeproject/socket.io http://localhost:8080/socket.io
ProxyPassReverse /nodeproject/socket.io http://localhost:8080/socket.io
<Location /nodeproject>
ProxyPass http://localhost:8080
ProxyPassReverse http://localhost:8080
</Location>
失敗リクエストは、次のようになります。
ws://0.0.0.0/nodeproject/socket.io/?EIO=3&transport=websocket&sid=MDuVcHmt3T1sa8ruAAAa
と私は不正な要求400の応答を取得します。
私はこの種のものを構成する専門家ではありませんが、どこが間違っていましたか?
ありがとうございます!
ありがとうございました。それは常に差がないthougtに固定されています... – giggo1604
最後に解決策が見つかりました。ありがとう@ sn0r –