2017-09-04 126 views
0

我在數字海洋上創建了Node.js Droplet。在Digital Ocean上啓動Node.js服務器

我已經用FileZilla連接到服務器並上傳了所有的Node.js文件(index.js,package.json等)。

我想用node index.js啓動服務器。它說

App is running at http://localhost:3000 in development mode 
    Press CTRL-C to stop 

不過,我不能夠也不看網站上的數字海洋也沒有對localhost:3000提供的公共IP地址。

如何正確啓動Node.js服務器?

編輯

我設立這個服務器(的index.js含量):

const express = require('express'); 

const app = express(); 

app.set('port', process.env.PORT || 3000); 

app.listen(app.get('port'),() => { 
    console.log('App is running at http://localhost:%d in %s mode', app.get('port'), app.get('env')); 
    console.log(' Press CTRL-C to stop\n'); 
}); 
+1

誰知道......這是您的應用程序,您如何指定綁定主機取決於您的代碼!只有你可以回答這個問題。您希望綁定到'::'或'0.0.0.0'(這是一個僞地址,指示您要分別在IPv6或IPv4中監聽所有接口)。你還想確保你沒有防火牆阻止':3000' ......但是誰也知道如何幫助你,因爲你甚至沒有告訴我們你正在運行什麼操作系統。 – Brad

+0

好的,現在你已經發布你的代碼了......你的應用程序已經在所有的接口上進行了監聽,所以這將歸結爲防火牆配置。 – Brad

回答

0

首先要確保在同一臺機器上打開另一個終端和執行一切運行良好捲曲。

curl http://localhost:3000 

確認工作正常後,您必須在機器上打開相應的端口。

讓我們通過運行下面的命令來查看當前打開了哪些端口。

sudo ufw status verbose 

如果未列出端口3000,請讓我們使用以下命令添加它。

sudo ufw allow 3000/tcp 

確認端口3000已通過再次運行ufw status添加。

sudo ufw status verbose