我不是网络专家,如果有些事情看起来很蠢,那就很抱歉。
我在连接到位于我家外部的RPI node.js服务器时遇到问题。我使用NO-IP并在具有特定主机名的路由器上配置它。我将端口转发到8888端口。
var express = require("express");
var app = express();
var http = require("http").Server(app);
var io = require('socket.io')(http);
var path = require('path');
http.listen(8888, "0.0.0.0");
/*app.use(function (req, res, next){
res.setHeader('Access-Control-Allow-Origin', 'http://hostname:port');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
res.setHeader('Access-Control-Allow-Credentials', true);
next();
});*/
app.use(express.static(path.join(__dirname, '/')));
app.get("/home",function(req,res,next){
res.sendFile(path.join(__dirname + "/index.html"));
});
console.log("server ubi jeza");
如果我尝试连接到http://hostanme.org,它会连接到我的路由器。如果我尝试连接到http://hostanme.org:8888,请关闭时间。
端口转发检查工作正常,并说当我运行服务器时端口8888正在工作。当服务器未运行时,表示连接已关闭。
我也尝试使用sudo nano /etc/sysctl.conf
和net.ipv4.ip_forward=1
,但它不起作用。
我做错了吗?
答案 0 :(得分:0)
我可以从外界访问页面。当我在本地网络上时,我无法使用外部IP访问它。