【问题标题】:Express.JS server to connect to host on remote networkExpress.JS 服务器连接到远程网络上的主机
【发布时间】: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)
});

任何信息都会被告知我有一些网络经验(仍然是一个刚刚学习的菜鸟),这确实让我感兴趣。

【问题讨论】:

    标签: node.js express server routes ip


    【解决方案1】:

    我假设您正在尝试通过本地 IP 访问服务器。但是您使用 4G(可能在您的手机中)执行此操作,这意味着您的请求是通过互联网进行的,而您的本地 IP 仅在您的网络中有效。

    即使您使用的是公共 IP,您也可能必须在路由器上配置端口转发,以便它知道如何处理此端口的传入流量。

    【讨论】:

    • 太棒了,谢谢你,我猜远程地址是默认网关。非常感谢:)
    • 如果您觉得有帮助,请不要忘记接受答案:)
    【解决方案2】:

    如果您在私有网络中托管您的 express 服务器,您必须通过创建端口转发、目标 nat 或某种将私有服务发布到公共世界的方法来访问 express 服务器。

    如果您需要更多帮助,我需要了解更多关于您的网络环境、您的公共 ip 和 ...

    欢迎提问 度过充实的一天

    【讨论】:

    • 太棒了,谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 2012-08-10
    • 1970-01-01
    • 2023-01-30
    • 1970-01-01
    • 2020-07-08
    • 2011-08-16
    • 2012-07-01
    • 2022-12-11
    相关资源
    最近更新 更多