【问题标题】:not able to access node.js server from public ip of amazon windows instance无法从亚马逊 Windows 实例的公共 IP 访问 node.js 服务器
【发布时间】:2014-08-21 13:55:41
【问题描述】:

我在我的亚马逊微型 Windows 服务器实例上运行 node.js 服务器。我无法使用亚马逊实例的公共 IP 访问 node.js 服务器。我可以使用 localhost:12345 从实例访问 node.js 服务器,但无法使用实例的公共 ip(54.200.211.174)54.200.211.174:12345 从其他电脑访问 这是我的 node.js 代码.....

var http = require('http');

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(12345);

console.log('Server running on port 12345.');

我还为此端口添加了安全规则 类型 协议 端口 范围 源 自定义 TCP 规则 TCP 12345 0.0.0.0/0

请帮助我使用亚马逊实例的公共 ip 访问我的 node..js 服务器

【问题讨论】:

  • EC2实例的安全组是否允许端口12345?

标签: node.js amazon-web-services tcp


【解决方案1】:

解决方案: 允许传入流量通过所需端口进入您的机器

Windows 防火墙阻止传入您计算机的流量。您可以按照以下步骤添加“入站规则”:

  1. 打开“Windows 防火墙”(在开始菜单中搜索)
  2. 点击左侧窗格中的“高级设置”
  3. 选择“入站规则”
  4. 点击右窗格中的“新规则...”
  5. 选择“端口”并单击“下一步”
  6. 选择您需要的“TCP”或“UDP”并输入端口号(在您的情况下端口为 12345)
  7. 选择“允许连接”并单击“下一步”
  8. 选择您需要应用规则的位置。
  9. 提供规则的名称和描述,然后点击完成

您的问题一定会得到解决!

【讨论】:

    【解决方案2】:

    Windows 防火墙可能正在运行并阻止传入流量。测试是否禁用 Windows 防火墙。

    【讨论】:

    • 是的,我后来意识到这一点并关闭了我的实例防火墙并且它工作正常,但我想在防火墙中放置异常,这样我就不必关闭它并且它仍然可以工作。我怎样才能做到这一点 ?任何想法...!!
    • 您应该将其作为一个单独的问题发布,但您真正需要做的就是添加一个规则以允许传入端口 12345,它应该可以工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    • 2015-02-24
    • 2016-01-06
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多