如何通过Thin / nginx访问事件机器websockets?

时间:2012-04-26 20:37:47

标签: ruby nginx websocket eventmachine thin

我有一个事件 - 机器websocket应用程序(使用em-websocket gem),它运行正常。问题是我需要使用端口80通过nginx部署它(不能用tcp代理模块编译它)。是否可以使用指向瘦服务器的简单nginx proxy_pass并让瘦服务器将请求传递给我的websocket服务器?

1 个答案:

答案 0 :(得分:2)

根据我的理解,您无法使用proxy_pass代理websocket流量。

  

由于Web套接字是通过HTTP 1.1连接(完成握手和升级)完成的,因此您的后端需要支持HTTP 1.1,而且根据我的研究,它们会破坏HTTP 1.0规范......

我见过有些人尝试用socket.io和HAProxy做同样的事情(参见链接)。我猜你可以尝试用socket -io替换em-websockets并期望得到类似的结果。

1:http://www.letseehere.com/reverse-proxy-web-sockets

2:HAProxy + WebSocket Disconnection