【问题标题】:turn local NodeJS into a online server将本地 NodeJS 变成在线服务器
【发布时间】:2018-02-13 10:08:41
【问题描述】:

我想远程访问我的 nodejs 服务器(不在同一个网络中)。 我不知道我需要在这个表格中申请哪些数据可以帮助我吗?

节点端口:3000

谢谢!

【问题讨论】:

    标签: node.js portforwarding


    【解决方案1】:

    好吧,我先解释一下这个概念。当请求连接到外部路由器形式(公共 IP)时,路由器不知道将其发送到哪里,因为在后面,网络上可能有不止一台计算机。

    我们需要做的是用这条规则告诉路由器“如果有人在这个端口发送东西,将它发送到这台本地计算机到这个其他端口”。

    因此,按照这个概念,我们希望从外部获取连接并将其重定向到您计算机上的 NodeJS 端口。

    node的端口范围是3000到3000,范围只有一个元素。

    因此,在本地 IP 上,使用运行 NodeJS 服务器的计算机的本地 IP。我建议将网络配置为设置静态 IP,这样每当您的计算机重新连接到网络时,都不会获得随机的本地 IP。

    到本地开始端口和本地结束端口使用NodeJS端口,您提供的为3000。

    在外部 IP 上尝试保留 0.0.0.0,这意味着“任何 IP”,因此请求哪个外部 IP 无关紧要。

    外部端口(起始端口和结束端口)可以是您想要的任何端口。外网连接时需要使用外部端口,建议使用与本地端口相同的端口,为方便起见,即3000。

    协议,取决于 NodeJS 的功能,但我希望只需要 TCP。如果不是这种情况,则需要同时启用 TCP 和 UDP。

    【讨论】:

      【解决方案2】:

      只需安装localtunnel 软件包,即可让您随时随地访问本地服务器。

      全局安装 Localtunnel(需要 NodeJS)以使其在任何地方都可以访问:

      npm install -g localtunnel
      

      在某个本地端口(例如http://localhost:8000)上启动一个网络服务器,并使用命令行界面请求一条通往本地服务器的隧道:

      lt --port 8000
      

      您将收到一个 URL,例如 https://gqgh.localtunnel.me,只要您的本地 lt 实例保持活动状态,您就可以与任何人共享该 URL。任何请求都会被路由到指定端口的本地服务

      欲了解更多信息:https://localtunnel.github.io/www/

      希望这会有所帮助!

      【讨论】:

      • 真不错,一定要试试
      【解决方案3】:

      在路由器的 NAT 配置中为 Nodejs 本地网络的 IP 添加 DMZ 规则。 例如,如果 NodeJS 服务器运行在 IP 为 192.168.1.45 的电脑上,则仅为该 IP 添加 DMZ 规则。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-23
        • 2016-11-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-04
        相关资源
        最近更新 更多