【发布时间】:2014-07-17 17:38:14
【问题描述】:
有没有办法在 CentOS 上的 Apache 2.2 上设置“mod_proxy_wstunnel”模块?由于项目限制,我无法升级到 2.4。
【问题讨论】:
有没有办法在 CentOS 上的 Apache 2.2 上设置“mod_proxy_wstunnel”模块?由于项目限制,我无法升级到 2.4。
【问题讨论】:
我已经投入了大量时间来解决这个问题,但可用的文档很少。让我知道这是否有帮助,否则我可以帮助您解决问题。也希望这对未来的读者有所帮助。
编译mod_proxy_wstunnel.so,
1) yum 安装 httpd-devel
2) 下载 mod_proxy_wstunnel.c
3) 使用 apxs -i -a -c mod_proxy_wstunnel.c 编译它
现在在 /etc/httpd/modules 中加载上面编译的模块
1) 复制 /etc/httpd/modules 中的 mod_proxy_wstunnel.so (从上面编译)
2) 为了在服务器启动时加载模块,请在 httpd conf 文件 /etc/httpd/conf/httpd.conf 中使用 LoadModule 指令
在所有其他 LoadModule 行中添加以下行,
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
3) 要重启 apache,请使用 service httpd restart
4) 重启使用后查看apache中加载的模块,httpd -M
5) 模块安装好后,在/etc/httpd/conf/httpd.conf中添加这两行
ProxyPass /websockets/mywebsocket ws://mywebsocketserver.com//websockets/mywebsocket retry=4
ProxyPassReverse /websockets/mywebsocket ws://mywebsocketserver.com//websockets/mywebsocket retry=4
注意:确保在 / 的默认大小写之前添加上述行。为了安全起见,还要重新启动 apache。
【讨论】: