【问题标题】:How to set up websocket on Apache 2.4.18 and tomcat7?如何在 Apache 2.4.18 和 tomcat7 上设置 websocket?
【发布时间】:2016-04-12 17:50:43
【问题描述】:

目前,我已经成功安装了包含 mod_proxy_wstunnel 的 apache2.4.18,并在另一台机器上安装了 tomcat7。我已经在 tomcat7 上部署了大气示例应用程序。然后我可以访问http://tomcatserver.com:8080/ademo/index.html

我在下面捕获了浏览器。

此 index.html 是从 https://github.com/Atmosphere/atmosphere-samples/blob/master/samples/chat/src/main/webapp/index.html 检索到的。

然后我尝试在 apache 服务器中设置 httpd.conf,如下所示。我没有使用任何与 VirtualHost 相关的配置。我只是将以下两行附加到这个 httpd.conf 文件的末尾。

ProxyPass     /ademo/     http://tomcatserver.com:8080/ademo/
ProxyPassReverse  /ademo/     http://tomcatserver.com:8080/ademo/

然后我重新启动httpd,并访问下面的url。 http://apachehttpdserver.com/ademo/index.html

我截取了下面的浏览器快照,我发现不支持 websocket。

所以我想知道如何修改这个 httpd.conf 以支持 websocket? 我已取消注释 LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so

其实我打算设置多台后端服务器,所以我使用下面提到的http://blog.arungupta.me/load-balance-websockets-apache-httpd-techtip48/的配置。但我仍然收到错误 [Fri Jan 08 02:55:50.840362 2016] [proxy:warn] [pid 18446:tid 46971298007360] [client 10.248.66.148:52033] AH01144: No protocol handler was valid for the URL /ademo/socket.html。如果您使用的是 DSO 版本的 mod_proxy,请确保代理子模块包含在使用 LoadModule 的配置中。 我确定的一件事是我已经在 httpd.conf 中设置了必要的模块。

 <Proxy balancer://mycluster>
    # Define back-end servers:

    # Server 1
     BalancerMember ws://10.214.49.65:8080

    # Server 2
    BalancerMember ws://10.214.49.83:8080/
</Proxy>

ProxyPass /ademo balancer://mycluster/ademo
ProxyPassReverse /ademo balancer://mycluster/ademo

【问题讨论】:

    标签: apache websocket apache2 tomcat7 mod-cluster


    【解决方案1】:

    我想回答我自己的问题。

    我使用的httpd是从支持websocket的源代码2.4.18编译而来的。而且我发现编译过程很正常,没有任何异常。我使用的 redhat 是 Red Hat Enterprise Linux Server release 5.9 (Tikanga)。

    我猜这是因为错误消息“没有有效的协议处理程序”。比我尝试安装 yum 切换到 redhat 7.1。我执行了'yum install httpd',它会自动安装httpd 2.4.5。而且我发现httpd和tomcat的websocket连接没问题。

    但目前我想解决 redhat 5.x 上的问题,因为将来我们将使用低版本的 redhat。一般来说,既然编译过程没问题,那么二进制也应该没问题吧?

    【讨论】:

      猜你喜欢
      • 2013-06-24
      • 1970-01-01
      • 2014-06-15
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 2017-07-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多