我是NodeJs的新手。我開始在我的本地開發系統這樣一個簡單的node.js服務器:無法從互聯網訪問NodeJs服務器
var http = require('http');
var fs = require('fs');
var server = http.createServer(function (req, res) {
console.log(req.url);
res.end();
}).listen(8000);
我可以從localhost
,127.0.0.1
和192.168.1.103
訪問服務器,但是當我試圖從我的公網IP地址84.47.***.**
訪問服務器只有我得到的是:
timeout
我一直在閱讀一篇關於這在過去2小時,所有的只是說,設置主機0.0.0.0
這是node.js的默認主機。如果沒有提供。
我可以ping我的公共IP並獲得正確的結果。
我在Windows 8.1上,Windows防火牆是off
,我在comodo防火牆中定義了自定義允許規則,並且確實也禁用了comodo防火牆。
當我檢查node.js正在偵聽0.0.0.0:8000
和:::8000
(IPv6我認爲)爲TCP
連接。
我在這裏錯過了什麼?我該怎麼辦?是因爲窗戶嗎?或者是什麼?
欣賞這方面的任何幫助。
嘗試更改...})。listen(8000); .......... to})。listen(「0.0.0.0」,8000); – damitj07
@ damitj07 ip是第二個參數,'0.0.0.0'是默認值。已經試過'listen(8000,'0.0.0.0')'。和你的建議是不正確的,並給出錯誤'錯誤:聽EACCES 0.0.0.0' – Exlord