2017-08-17 86 views
0

好吧,我已經在這個小時搜尋了,沒有任何工作應該這樣,所以我必須做錯了什麼。它在localhost:port上工作正常,但我無法遠程工作。如何製作一個公共節點服務器

這裏是app.js

var http = require('http'); 
var express = require('express'); 
var app = express(); 

app.set('view engine', 'jade'); 
app.set('views', './views'); 

app.get('/', function(req, res) { 
    res.render('index', {title: 'Welcome', message: 'Hello ExpressJS!'}); 
}); 

app.listen(3000); 
console.log('Running Express...'); 

這裏是我的端口fowarding配置:

Name: HTTP 
Service Type: TCP 
External Starting Port: 80 
External Ending Port: 80 
Use the same port range for Internal Port: [Checked] 
Internal IP Address: 192.168.1.11 (This is the pc I want to use) 

DNS配置

Name: Blank Type: A TTL: 300 Target: My Ip Address 
Name: WWW Type: A TTL: 300 Target: My Ip Address 

如果我使用www.mydomain.com我一無所獲,如果我使用我的IP地址仍然沒有。

我該如何解決這個問題?

回答

2

您的快遞服務在端口3000上運行,而不是80。您需要將端口80上的傳入流量轉發到192.168.1.11:3000

+0

我該怎麼做,路由器設置中沒有選項。我嘗試在端口80上運行應用程序,但這只是導致錯誤,或者根本不起作用。 –

+0

@JoshBeyer我會開始取消選中「爲內部端口使用相同的端口範圍」 - 我的猜測一旦未選中,它會讓您設置內部端口映射。 – James

+0

我試過了,我把它設置爲內部端口3000,它沒有開始或結束的選項,它只是一個數字輸入框。不工作壽。 –

0

如果您安裝了nginx,您可以輕鬆地將該端口代理到您想要從外部世界訪問的域。