Tag: thin,

nginx可以用作后端websocket服务器的反向代理吗?

我们正在研究一个需要利用html5 websockets的Ruby on Rails应用程序。 目前,我们有两个独立的“服务器”可以这么说:我们的主要应用程序运行在nginx +乘客上,另一个服务器使用Pratik Naik的Cramp框架(运行在Thin上 )来处理websocket连接。 理想情况下,当部署的时候,我们应该在nginx + passenger上运行rails应用程序,而websocket服务器将在nginx后面代理,所以我们不需要让websocket服务器运行在不同的端口上。 问题是,在这个设置中,似乎nginx过早地closures了Thin的连接。 连接成功build立到瘦服务器,然后立即closures200响应代码。 我们的猜测是,nginx并没有意识到客户端正在尝试为websocketstream量build立一个长期运行的连接。 不可否认的是,我并不是那么了解nginxconfiguration,所以,甚至有可能configurationnginx作为websocket服务器的反向代理吗? 还是我必须等待nginx提供新的websocket握手的支持? 假设让应用服务器和websocket服务器在端口80上侦听是必需的,那么可能意味着我现在必须在没有nginx的单独的服务器上运行Thin。 提前感谢您的任何意见或build议。 🙂 -约翰