2014-03-12 21 views
4

配置: OSX 10.9.1,紅寶石2.1.1通過RVM傑基爾不是投放網站本地

我已經通過命令jekyll new sitename創建了一個新的Jekyll網站。

然後我進入該目錄併發出命令jekyll serve。試圖訪問http://localhost:4000/http://0.0.0.0:4000/我的瀏覽器不斷地嘗試加載頁面時

Configuration file: /Users/George/sitename/_config.yml 
      Source: /Users/George/sitename 
     Destination: /Users/George/sitename/_site 
     Generating... done. 
    Server address: http://0.0.0.0:4000 
    Server running... press ctrl-c to stop. 

但是:

我得到通知如下。

我已檢查並且網站已正確構建,其中/Users/George/sitename/_site/中包含index.html

_config.yml看起來像這樣:

name: sitename 
markdown: maruku 
pygments: true 

有誰知道爲什麼傑基爾可能無法服務的網站,但沒有拋出任何錯誤?

編輯:如果我改變端口6000,並會嘗試它,然後我的瀏覽器瞬間給人一種page not found所以必須有一些與港口乾擾4000但是問題仍然有效。

回答

4

您的計算機上可能還有別的東西正在使用端口4000。您可以通過運行下面的命令找出:

sudo lsof -i :4000 

正如你可以運行另一個端口的服務器,我們將繼續前進到下一個問題,設置的BaseURL。在您的_config.yml中,您可以指定要使用哪個baseurl,這將成爲所有頁面的URL,因此如果您有baseurl: http://myawesomesite.com,Jekyll會希望從該URL訪問它們。

當你在本地工作,你有兩個選擇:

設置在baseurl/_config.yml

baseurl:/

啓動傑基爾與--baseurl標誌:

$ jekyll serve -w --baseurl '/' 

另外,您可以將端口指定爲標誌:

$ jekyll server -w --baseurl '/' --port 4000 

如果您想了解是怎麼回事,當你運行jekyll的更多信息,你可以用--trace標誌運行命令:

$ jekyll server -w --trace 
+0

謝謝,一個TomTom公司的申請被監聽4000但是我已經切換到端口6000是空的,嘗試修改'baseurl'屬性並使用'--trace'標誌,但它仍然不起作用,並且不提供任何附加信息。 –

+0

如果問題中的配置文件是正確的,我不認爲'baseurl'可能是問題,因爲Jekyll默認從'/'提供服務。 – Max

+0

好的...我切換到端口8080,它的工作。奇怪,因爲'sudo lsof -i:6000'說沒有任何東西在那裏運行,但是wikipedia聲明'6000'可能被X11使用。現在它正在工作。 –