【问题标题】:make a localhost port accessible over internet - NodeJS使本地主机端口可通过互联网访问 - NodeJS
【发布时间】:2018-10-10 12:46:06
【问题描述】:

我问的是 nodeJS 特有的这个问题,但也许它也适用于其他 Web 开发框架。

我有一个 nodeJS Express hello world 应用程序在我的笔记本电脑上运行,监听端口 3000(我使用的是 Linux Mint Sylvia 18.3)。访问此应用程序的 localhost:3000 和 :3000 请求可以正常工作机器,也在我路由器的本地网络内。但是当我在路由器上进行端口转发到端口 3000,并尝试通过 :3000 访问此应用程序时,它不起作用。

这不是为了任何生产目的,而只是为了学习。我如何在没有任何 3rd 方 Web 服务器应用程序(apache/nginx 等)或任何本地隧道(如 ngrok)帮助的情况下通过互联网访问我的 hello world 应用程序 - 就像我们如何从 AWS EC2 服务器访问 HelloWorld 应用程序一样通过访问服务器:.

【问题讨论】:

  • EC2 示例之所以有效,是因为它确实有一个可从外部访问的 IP 地址。如果你可以配置你的防火墙,你应该能够让它通过任何对特定端口的请求到特定的本地 IP 地址(不是 localhost,而是你的 192.168.X.X 地址)。
  • 当您说“它不起作用”时,它到底在做什么?您能否提供错误消息或更多信息?
  • 谢谢尼尔。但是我可以通过提及《 localip 》:端口从连接到我的wifi的另一台PC访问此应用程序。所以我想我的 linux mint 防火墙没有引起问题。我对吗?我还使用 whatsmyip.com 查找我的公共 IP,然后尝试访问该应用程序。这个ip地址不是可以公开访问的ip吗?
  • 尼克,chrome中服务器请求超时。

标签: node.js express network-programming webserver portforwarding


【解决方案1】:

您可以使用

将您的 Node JS 或任何端口上的任何其他应用程序临时公开
  1. Localtunnel
  2. ngrok

【讨论】:

    猜你喜欢
    • 2017-11-22
    • 2015-02-12
    • 2017-03-04
    • 1970-01-01
    • 2011-06-02
    • 2011-01-12
    • 2023-03-29
    • 2016-03-22
    • 2021-10-09
    相关资源
    最近更新 更多