4

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

4

1 回答 1

2

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

由于 web 套接字是通过 HTTP 1.1 连接完成的(握手和升级完成),你的后端需要支持 HTTP 1.1,根据我的研究,它们打破了 HTTP 1.0 规范......

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

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

2:HAProxy+WebSocket断线

于 2012-04-26T21:30:02.563 回答