Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从其他网络访问我的网站?_Javascript_Node.js - Fatal编程技术网

Javascript 如何从其他网络访问我的网站?

Javascript 如何从其他网络访问我的网站?,javascript,node.js,Javascript,Node.js,我最近得到了node.JS 我一直在看的所有教程都告诉我去本地主机查看应用程序,我正在使用Port2000。我知道localhost也与我的ip相同。。192.168.0.1:2000,我已在调制解调器设置中转发端口2000,但无法从其他网络访问服务器。请帮忙。那么我如何从其他网络访问我的网站呢 //app.js var express = require('express'); var app = express(); var serv = require('http').Server(app

我最近得到了node.JS 我一直在看的所有教程都告诉我去本地主机查看应用程序,我正在使用Port2000。我知道localhost也与我的ip相同。。192.168.0.1:2000,我已在调制解调器设置中转发端口2000,但无法从其他网络访问服务器。请帮忙。那么我如何从其他网络访问我的网站呢

//app.js
var express = require('express');
var app = express();
var serv = require('http').Server(app);

app.get('/',function(req, res) {
    res.sendFile(__dirname + '/client/index.html');
});
app.use('/client',express.static(__dirname + '/client'));

serv.listen(2000);
console.log("Server started.");
我知道localhost也与我的ip相同。。192.168.0.1:2000

事实并非如此。网络上的计算机通常有多个IP地址

localhost
将指向环回接口(通常在
127.0.0.1
::1

192.168.0.1
是一个专用IP地址(因此它可能是局域网上的一台机器)。但它不太可能是计算机WiFi或以太网接口的地址。它通常由路由器使用

您需要:

  • 确认
    192.168.0.1
    是否为您计算机的IP地址(如果是,请获取正确的地址)
  • 确保端口转发配置为指向正确端口的正确地址
  • 确保您的Node.js应用程序正在正确的网络接口上侦听(您可能编写了该应用程序,以便它只在
    localhost
    上侦听)
  • 确保当您试图从网络外部访问它时,您使用的是路由器面向公众的IP地址

  • 请注意,某些路由器不允许您从网络内部访问其面向外部的IP地址,因此您可能必须从网络外部的计算机进行测试。

    错误的论坛,但无论如何。当您尝试从其他网络访问它时,您需要使用传出的IP,而不是本地IP。你是吗?此外,我怀疑您的端口转发操作不正确。您需要将端口2000转发到承载nodejs程序的机器。不是到192.168.0.1,因为那是你的路由器本地ipSorry我犯了一个错误私有ip实际上是192.168.0.2。如何在node js中使用我的公共ip?请参阅我发布的链接。另外,请在这里插入您的nodejs代码。好的,谢谢,尽管这里有代码,但仍然有点困惑。据我所知,代码中没有任何内容限制从网络外部访问(尽管我不是专家)。你也可以插入你的端口转发规则吗?另外,是否会有防火墙阻止?为了便于测试(而不是跑去找你的伴侣),关闭wifi,打开手机上的移动数据,然后进行测试。对不起,输入的私人IP地址实际上是192.168.0.2。端口转发配置为正确的地址。如何确保Node.js正在侦听正确的网络接口?是的,我一直在网络之外的机器上测试。(马路对面的朋友之家)@Bob给你:谢谢,还是有点困惑,虽然我看了那篇文章,但还是不起作用。我的代码在pastebin.com/NvB5ciAh