如何将websocket请求从Apache httpd转发到Apache Tomcat ?



我的服务器设置像Apache2 + mod_jk +两个Tomcat实例(7.0.33)。现在我在tomcat中使用atmosphere。长时间轮询的气氛很好。但是现在我想使用web套接字作为大气中的传输协议。但是Apache似乎无法将请求转发给Tomcat,它给了我错误

无法在ws://localhost/Myapp/update/?X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=1.1&X-Atmosphere-Transport=websocket&X-Cache-Date=0&Content-Type=application/json.

从Apache 2.4.6开始,Apache httpd转发/代理websockets

Mod_Jk意味着将请求从HTTP转换为AJP/13协议,这意味着web服务器应该有一些处理/处理请求的能力。使用mod_proxy建立apache-tomcat通信可能会更好。

Apache不支持WebSocket,所以你需要使用Ningx或HAProxy

我认为你可以使用一个名为mod_proxy_wstunnel的模块

https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html

我认为这个问题最初提出时并不存在。在2.4.5版本Apache添加了对这个mod的支持。

相关内容

  • 没有找到相关文章