2014-06-26 58 views
0

我使用CentOS運行aws的m1.microinstance。我下載了Yeoman,git,npm,並且所有的依賴關係都存在。我試圖在這臺服務器上運行MEAN堆棧,所以,mongo,express,angular和node。但是,當我訪問我的公共DNS時,我的網站給了我這個錯誤:「糟糕!Google Chrome無法連接到ec2-54-191-0-63.us-west-2.compute.amazonaws.com」。在我的管理控制面板上,我看到了我的實例狀態,並說它正在運行。我明白,如果我使用過Apache,顯示的頁面位於/ var/www/html目錄中。那麼,如何獲得類似於apaches的目錄,顯示我的html文件,或者任何我想要公開的內容查看?我已將我的安全組配置爲入站,爲每個人監聽SSH端口22,以及HTTP端口80。爲什麼ec2實例不顯示我的網站?使用nodejs

Yeoman爲我設置了一個不錯的應用程序文件夾,但由於某種原因它沒有顯示。我想也許我錯過了一個server.js,但是當我添加它時,似乎沒有修復任何東西。有什麼建議?謝謝!

+1

您確定您的節點實例正在運行並偵聽端口80嗎?通常它會從更高的端口開始。 Express的方法開始監聽端口3000'var server = app.listen(3000,function(){ console.log('Listening on port%d',server.address().port); }); ' - – pherris

+0

@pherris所以,起初它是8080,所以現在我改變了它,現在我得到了一個不同的錯誤:EACCES errnoException(net.js:904:11) – courtyen

+0

好的,我在這裏找到了答案:http ://www.stackoverflow.com/questions/9164915/ ...基本上,我只需要以sudo的方式運行命令。 – courtyen

回答

1

確保您完全匹配端口 - 您的瀏覽器URL:PORT,EC2路由規則和您的NodeJS設置。看起來您可能正在監聽服務器上高於80的端口。

正如您在評論中提到的,如果您想在1024以下的端口上偵聽,您需要以特權用戶身份運行該命令。

-1

我沒有在我的AWS服務器上以root身份運行節點,所以它沒有設置Yeoman爲我製作的精美構建的應用程序。

http://www.stackoverflow.com/questions/9164915是我意識到我的錯誤的地方。我是linux操作系統的新手,所以我正在學習。 :)

+0

這不應該被接受的答案 - 這是你只有通過閱讀評論才能找到的後續問題的答案你的問題。將來,StackOverflow禮節將接受解決問題的答案(並由在此協助您的人發佈)。隨意使用評論來添加額外的信息,例如sudo要求在端口80上收聽。 – pherris

相關問題