配置: OSX 10.9.1,ruby 2.1.1来自RVM
我已通过命令jekyll new sitename
创建了一个新的Jekyll网站。
然后我进入该目录并发出命令jekyll serve
。
我收到以下通知:
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.
但是,在尝试访问http://localhost:4000/
或http://0.0.0.0:4000/
时,我的浏览器会无休止地尝试加载页面。
我已检查并且网站构建正确,包括index.html
中的/Users/George/sitename/_site/
。
_config.yml
看起来像这样:
name: sitename
markdown: maruku
pygments: true
有谁知道为什么Jekyll可能无法为网站提供服务而不会抛出任何错误?
修改:如果我将端口更改为6000
并尝试投放,那么我的浏览器会立即提供page not found
,因此必须存在干扰端口{{1但问题仍然存在。
答案 0 :(得分:4)
可能还有其他东西正在您的计算机上使用端口4000
。您可以通过运行以下命令找到:
sudo lsof -i :4000
由于您可以在另一个端口上运行服务器,我们将继续讨论下一个问题,设置baseurl。在您的_config.yml
中,您可以指定要使用的baseurl
,这将是所有网页都会从中提供的网址,因此如果您有baseurl: http://myawesomesite.com
,则Jekyll会希望从中访问它们网址。
当您在本地工作时,您有两种选择:
将baseurl
中的/
设置为_config.yml
:
baseurl: /
使用--baseurl
标志启动Jekyll:
$ jekyll serve -w --baseurl '/'
此外,您可以将端口指定为标志:
$ jekyll server -w --baseurl '/' --port 4000
如果您想了解运行jekyll
时发生了什么的更多信息,可以使用--trace
标志运行命令:
$ jekyll server -w --trace