将本地 NodeJS 变成在线服务器

turn local NodeJS into a online server

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

Node.js PORT:3000

谢谢!

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

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

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

npm install -g localtunnel

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

lt --port 8000

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

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

希望对您有所帮助!

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

我们需要做的是用这条规则告诉路由器"If someone sends something in this port, send it to this local computer to this other port"。

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

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

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

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

在外部 IP 上尝试保留 0.0.0.0,这意味着 "Any IP",因此请求哪个外部 IP 都没有关系。

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

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