Amazon ec2 如何在AmazonEC2实例上允许套接字IO请求?

Amazon ec2 如何在AmazonEC2实例上允许套接字IO请求?,amazon-ec2,socket.io,Amazon Ec2,Socket.io,我有一个web应用程序在端口8080的Amazon EC2实例上运行,该web应用程序在启动时启动一个套接字io服务器,在端口9092上侦听 在连接到Socket io服务器的客户端文件中,我有以下内容: io.connect('http://<IPADDRESS>:9092'); io.connect('http://:9092'); 不幸的是,此请求被阻止,如图所示: 我认为问题是关于我的EC2实例的入站规则,因此我允许通信量,如下所示: 但是请求仍然被阻止 注意:当我

我有一个web应用程序在端口8080的Amazon EC2实例上运行,该web应用程序在启动时启动一个套接字io服务器,在端口9092上侦听

在连接到Socket io服务器的客户端文件中,我有以下内容:

io.connect('http://<IPADDRESS>:9092');  
io.connect('http://:9092');
不幸的是,此请求被阻止,如图所示:

我认为问题是关于我的EC2实例的入站规则,因此我允许通信量,如下所示:

但是请求仍然被阻止

注意:当我的应用程序在本地托管时,一切正常

那么为什么亚马逊会这样做?我应该怎么做才能解决这个问题呢

更新:

netstat-a-n | grep9092
在实例上输出此命令:

另外,请看一下firefox向我展示的请求尝试时间:


这表明我正在将服务器绑定到本地主机地址,就好像它是从本地主机访问的一样


感谢@robertklep comment,我确实将服务器绑定到了ec2实例地址,它现在正在工作。

从ec2外部与服务器建立套接字连接的最简单方法是侦听所有传入的流量:

server.listen(3000, '0.0.0.0');

这仅建议用于测试和开发环境。不要将其用于生产。

“亚马逊”不是“以这种方式行事”。他们没有隐藏的规则来阻止事情。您的配置不正确,但此处显示的信息不足以说明问题。当你说连接被“阻塞”时,你说的比你在这里显示的要多。当然,它没有成功,但是明确地说它被“阻止”的理由是什么?
netstat-a-n | grep9092在这个例子上显示了什么?谢谢@Michael sqlbot的评论,我已经更新了我的问题。感谢您查看它。它看起来像是您的
socket.io
服务器绑定到本地接口,外部无法访问该接口。你能分享设置
socket.io
服务器的代码吗?谢谢@robertklep,我已经将服务器绑定到我的ec2 IP地址,现在一切都正常了。我正在做一些类似的事情,只是我试图在两个ec2实例之间通信,并看到“网关超时错误”。你如何将服务器绑定到ec2实例地址???