我正在运行一个在后端使用Symfony 2 PHP框架的实时Web应用程序。我想为我的实时交互实现websockets。是否可以在与我的Symfony 2服务器相同的机器上安装node.js服务器来处理websocket连接?如果是这样,打开另一个端口(比如81)来处理websocket连接是否合乎标准?
答案 0 :(得分:2)
是的,有可能。为什么不?这只是另一个应用程序。
至于第二个问题。您可以打开另一个易于处理的端口(WebSockets不受跨源策略的限制),但您可能会丢失一些数据(cookie),或者您可以放置一个代理,将HTTP请求发送到Web服务器和WS请求Node.JS服务器。后者可以通过具有特殊标题Upgrade: websocket
来识别。无论哪种方式,WebSocket服务器都必须侦听不同的端口(除非您完全在Node.JS中开发应用程序)。