所以我基本上将 Node.js 和 Express 服务器从 LocalHost 转移到 Intranet 上的静态 IP 地址(还不是公共互联网,因此可以稍后处理权限)。
我对我编写的代码非常确定,按照 Node.js 标准来看,它相当简单。目标是提供静态文件,包括 API 路由,然后在连接到专用 VPN 网络时通过我的静态 IP 启动 Express 服务器(我希望它可以通过使用远程桌面和我自己的桌面来工作)。服务器在本地工作正常,但我无法克服这一点。我确定问题是否与编码相关或与防火墙/权限相关。
const express = require("express");
const path = require("path");
const app = express();
// Serve static files from the dist folder
app.use(express.static(path.join(__dirname, "dist")));
// Include your API routes
app.use("/api", require("./functions/api"));
// Start the Express server with Static IP Address
const port = process.env.PORT || 8080;
app.listen(port, "my-static-IP", () => {
console.log("Server is running at http://my-static-IP:8080" + "\nPort Number: " + port);
});
每当我通过另一台计算机输入静态 IP url 时,我都会收到超时错误,并且在远程桌面上我得到底层架构,但不是完整的网页。我在下面附上了两张照片。任何帮助都会很棒。我还包括了网络调试检查。
const express = require("express");
const path = require("path");
const app = express();
const host = process.env.PORT || "192.88.66.66" //your ip(use ENV file for that)
const port = process.env.PORT || 8080; //port
app.use(express.static(path.join(__dirname, "dist")));
app.use("/api", require("./functions/api"));
app.listen(host , port, () => {
console.log(`Server is running at http://${host}:${port}"`);
});