0
使用node.js
和socket.io
服务websockets
socket.io服务websockets需要身体上在端口80?
确实socket.io
需要被侦听端口80 - 用于websockets
真正的端口,或者可以将其代理到一个不同的端口,例如,端口8011,在服务器上?
浏览器,使用websockets
,通过80/http协商。在服务器上haproxy
重定向websockets
至node.js
。
right haproxy
指向127.0.4.11:80
。这工作正常,但这需要sudo
运行node.js
。
宁愿重定向到localhost:8011
,但不知道socket.io
是否需要实际上在端口80上才能正确支持websockets
。
但80多个websockets是不同的动物,需要复杂的'http extend'(?)握手,对吧?如果它使用80,那么防火墙不是问题。问题是,代理的socket.io是否需要知道,就浏览器而言,它是“真正”在80上,才能正确地完成其工作。 – 2012-07-09 04:25:29
最后一个问题的答案是否定的。只要浏览器认为它在80(为了避免同源问题),无论代理到什么端口,它都能正常工作。 – ebohlman 2012-07-09 07:26:01