両方がリバース プロキシとして機能する nginx と apache を介して Websocket 接続を確立するにはどうすればよいでしょうか。
システムは、メイン ホスト上の Apache とコンテナー内の Tornado Web アプリケーションを使用してセットアップされています。
私の Apache 設定は次のとおりです:
<LocationMatch /container_path/(?<app>(.+))/ws >
ProxyPass "ws://container_ip/app_name/%{env:MATCH_APP}/ws"
ProxyPassReverseCookiePath "/" "/container_path/"
</LocationMatch>
私の nginx 設定は次のようになります:
upstream backend {
server 127.0.0.1:8888;
}
server {
listen 80;
location ~ /ws$ {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
この設定では、400不正な要求tornado の WebSocketHandler からのステータス。
あらゆるヒントに感謝します