【发布时间】:2012-01-29 13:08:51
【问题描述】:
我已经尝试了在博客和 stackoverflow 中发布的所有可能的 haproxy 配置,但我仍然无法让 haproxy 和 socket.io 100% 地工作。在大多数“支持”网络套接字的浏览器中,它会失败并在错过心跳后退回到长轮询。浏览器似乎建立了初始连接(nodejs 调试),但我无法让客户端接收连接响应。其他人有类似的问题吗?以下是我尝试过的软件版本号和一些配置。
- haproxy 1.4.18
- 节点 0.6.5
- socket.io 0.8.7
Haproxy 配置(我已经尝试了很多很多选项):
- http://engineering.bistri.com/post/14307969768/socket-io-haproxy-http-authentication
- HAProxy + WebSocket Disconnection
- http://pastebin.com/H3XNv0TQ
- http://www.darkcoding.net/software/proxy-socket-io-and-nginx-on-the-same-port-over-ssl/(减去 ssl 内容)
Web 套接字工作于:
- Safari 5 (Windows)
- Chrome 11 (Linux)
【问题讨论】:
-
我从等式中删除了 haproxy,并且 socket.io 可以完美运行,所以我的 haproxy 配置一定有问题,或者由于某种原因两者不能再很好地协同工作。
-
如果我在 socket.io 切换协议之前停止 haproxy,那么连接上的 Web 套接字消息将发送到客户端。我现在使用link 进行配置。
-
我花了很多时间尝试获得正确的 haproxy 配置。就我而言,我希望 web 和 flash 套接字通过,但没有其他传输。我还想在 haproxy 终止 ssl。已经有一段时间了,您可能已经解决了这个问题。但是,我在博客中介绍了我的解决方案:blog.carbonfive.com/2013/05/02/…Cheers, Christian
标签: websocket socket.io haproxy