1

我刚刚开始掌握 socket.IO 和 nodeJS。让我的网络应用程序与他们正常工作。然后我让一个朋友在办公室机器上试用它,发现它无法连接。

我设置了这两个测试用例:

http://thebeer.co/labs/rt/chat.php此处为服务器 JS)- 这是socket.IO 聊天示例的精确副本。

http://thebeer.co/labs/rt/test.php这里是服务器 JS

他们两个都对他失败了。我还有一个朋友在大学电脑上试用,但也无法连接!在被告知较低的端口号不太可能被安全网络阻止后,我尝试了侦听端口 8100、8080 和 81-90 的节点服务器。

真的不明白,这个实时功能对每个人都可以访问非常重要,我做错了什么?

如何让 socket.IO 在安全的办公室和大学网络中连接?

4

3 回答 3

6

许多大型企业网络将阻止大多数用户使用端口 80 (http) 和端口 443 (https) 以外的所有内容尝试将所有内容放在这两者之一上,以获得最大的兼容性。

于 2011-05-20T14:07:33.343 回答
3

即使你让一切都在端口 80 上运行,也要记住,许多企业网络通过内容过滤器或其他可能不理解 websockets Upgrade 标头的代理运行 HTTP 流量......你可能想尝试强制 socket.io使用其中一种后台兼容性传输,看看是否有帮助。

FWIW,对 Colin Pickard +1,因为他可能是对的......我只是想我会添加这一点以防万一。

于 2011-06-16T03:02:56.803 回答
1

看看这两个链接。我帮助了另一个想要同样的成员。

我在端口 80 上运行 nodejs,我对公司网络没有任何问题。(我需要优先工作的一件事)

如何在端口 80 上运行 Node.js?

https://serverfault.com/questions/273143/binding-apache-to-specific-ip-address/273181#273181

于 2011-06-16T00:49:09.620 回答