2014-04-02 74 views
4

我正在學習Ruby on Rails with railstutorial.org並遇到了這個奇怪的問題。無法連接到本地主機:3000 for Rails,但127.0.0.1:3000工作

我跑了「軌服務器」和下面的信息表明:在各種瀏覽器3000,他們都不能建立到服務器的連接:

=> Booting WEBrick 
=> Rails 4.0.4 application starting in development on http://0.0.0.0:3000 
=> Run `rails server -h` for more startup options 
=> Ctrl-C to shutdown server 
[2014-04-02 01:28:18] INFO WEBrick 1.3.1 
[2014-04-02 01:28:18] INFO ruby 2.0.0 (2014-02-24) [x86_64-darwin12.5.0] 
[2014-04-02 01:28:18] INFO WEBrick::HTTPServer#start: pid=13004 port=3000 

我嘗試連接到本地主機。

我也試過rails server -p 3001並連接到localhost:3001,這也失敗了。

但是,我試過0.0.0.0:3000,127.0.0.1:3000,他們都工作,並呈現爲rails的默認歡迎。

然後我嘗試了localhost:80,它成功告訴我「It Works」,我實際上可以使用PHP + Apache連接到另一個本地項目。

所以我真的很想知道爲什麼發生這種情況,任何人都可能給我任何提示。

預先感謝您:)

+0

你是否能夠telnet到該端口,試試這個命令'telnet localhost 3000' – RSB

+0

如果你在linux上檢查主機('cat/etc/hosts')文件,它應該包含這一行'127.0.0.1 localhost' –

+0

你會喜歡的東西是'http://lvh.me:3000' - >這是一個指向你的本地主機的域名,所以你可以測試子域名 –

回答

4

請檢查您的主機文件。我假設你正在使用的Ubuntu然後只是鍵入

sudo nano /etc/hosts 

如果下面的行存在,那麼確定否則只是插入行。

127.0.0.1  localhost 

而且使用localhost:3000不是localhost:3000

+0

謝謝Sabyasachi。這確實解決了我的問題:) – yeelan

+0

如果它解決了您的問題,請將其標記爲已接受。 –

0

localhost is just an alias for 127.0.0.1

如果localhost:3000不起作用,但127.0.0.1:3000做,它可能會是你沒有本地主機的情況下別名設置(在您的主機文件中),這就是Sabyasachi Ghosh推薦的內容

如果您讓我們知道您的操作環境,我們將能夠提供更具體的建議

相關問題