Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在运行一个在后端使用 Symfony 2 PHP 框架的实时 Web 应用程序。我想为我的实时交互实现 websockets。是否可以在与我的 Symfony 2 服务器相同的机器上安装 node.js 服务器来处理 websocket 连接?如果是这样,打开另一个端口(比如 81)来处理 websocket 连接是标准的吗?
是的,有可能。为什么不?这只是另一个应用程序。
至于第二个问题。您可以打开另一个易于处理的端口(WebSockets 不受跨域策略的限制),但您可能会丢失一些数据(cookie),或者您可以放置一个代理,它将 HTTP 请求发送到 Web 服务器并将 WS 请求发送到Node.JS 服务器。后者可以通过具有特殊的 header 来识别Upgrade: websocket。无论哪种方式,WebSocket 服务器都必须监听不同的端口(除非您完全在 Node.JS 中开发应用程序)。
Upgrade: websocket