2017-09-05 37 views
-1

我想从远程访问我的nodejs服务器(不在同一网络中)。 我不知道我需要以这种形式应用哪些数据可以帮助我吗?将本地NodeJS变成在线服务器

PORT的NodeJS:3000分 enter image description here

的感谢!

回答

1

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

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

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

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

因此,在本地IP上,使用运行NodeJS服务器的计算机的本地IP。我建议配置网络来设置一个静态IP,所以每当你的计算机重新连接到网络时,都不会得到一个随机的本地IP地址。

对于本地启动端口和本地端口,请使用您提供的3000端口,即NodeJS端口。

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

而外部端口(开始端口和结束端口)可以是任何你想要的端口。从网络外部连接时需要使用外部端口,因此建议使用与本地端口相同的端口,方便使用,即3000.

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

1

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

2

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

安装全球Localtunnel(需要的NodeJS),使其在任何地方访问:

npm install -g localtunnel 

启动一些本地端口上的网络服务器(例如http://localhost:8000),然后使用命令行界面来请求隧道到本地服务器:

lt --port 8000 

您将收到一个URL,例如https://gqgh.localtunnel.me,你可以与任何人分享,只要LT的本地实例保持活跃。任何请求将被路由到本地服务在指定的端口

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

希望这有助于!

+0

真的很不错,必须尝试一下 – turmuka

相关问题