Express.JS 服务器连接到远程网络上的主机
Posted
技术标签:
【中文标题】Express.JS 服务器连接到远程网络上的主机【英文标题】:Express.JS server to connect to host on remote network 【发布时间】:2022-01-02 10:49:12 【问题描述】:所以我让这个小型快递服务器运行起来。我可以将它连接到本地网络上的其他设备,例如手机和其他PC。 但是,当通过我的 4g 连接时,它不起作用。这有什么原因吗?我确信当我在远程网络上 ping 其他私有地址时它以前可以正常工作,为什么现在不行?
代码:
const express = require("express");
const server = express();
const PORT = 3000
server.use(express.static("static"));
server.get("/", (req,res)=>
res.sendFile(__dirname + "/pages/index.html")
);
server.listen(PORT, "0.0.0.0", (req,res) =>
console.log("Listening on port ", PORT)
);
任何信息都会被告知我有一些网络经验(仍然是一个刚刚学习的菜鸟),这确实让我感兴趣。
【问题讨论】:
【参考方案1】:我假设您正在尝试通过本地 IP 访问服务器。但是您使用 4G(可能在您的手机中)执行此操作,这意味着您的请求是通过互联网进行的,而您的本地 IP 仅在您的网络中有效。
即使您使用的是公共 IP,您也可能必须在路由器上配置端口转发,以便它知道如何处理此端口的传入流量。
【讨论】:
太棒了,谢谢你,我猜远程地址是默认网关。非常感谢:) 如果您觉得有帮助,请不要忘记接受答案:)【参考方案2】:如果您在私有网络中托管您的 express 服务器,您必须通过创建端口转发、目标 nat 或某种将私有服务发布到公共世界的方法来访问 express 服务器。
如果您需要更多帮助,我需要了解更多关于您的网络环境、您的公共 ip 和 ...
欢迎提问 度过充实的一天
【讨论】:
太棒了,谢谢你:)以上是关于Express.JS 服务器连接到远程网络上的主机的主要内容,如果未能解决你的问题,请参考以下文章
无法将 Express.js 服务器连接到 Angular 前端
ssh 服务器连接到主机 xxx 端口 22:linux-ubuntu 上的连接超时
如何连接到谷歌计算引擎上的远程 PostgreSQL 服务器?
Heroku - Socket.IO 客户端总是连接到本地主机
无法连接到服务器:没有到主机的路由服务器是否在主机“ ************”上运行并接受端口5432上的TCP / IP连接?