出现此问题是因为根目录始终是用户和项目页面中的用户 url (user.github.com)。我找到了一个解决方案:将文件中的url
变量配置_config.yml
到github项目页面:
safe: true
...
url: "http://user.github.io/project-name"
然后,在布局中,使用绝对引用,使用site.url
变量来做到这一点:
<link rel="stylesheet" href="{{ site.url }}/css/styles.css">
并使用以下命令运行服务器:
$jekyll --server --url=http://localhost:4000
命令行选项以本地模式覆盖配置文件中的设置。通过这些设置,我得到了指向正确位置的所有链接,它们都托管在 github 和本地模式中。
更新:Jekyll 1.0由于 Jekyll 达到 1.0,上述选项server
及其url
各自的命令行选项--server
已--url
被弃用。新版本说明:
在_config.yml
文件中,添加变量baseurl
(不带斜杠):
baseurl: "http://user.github.io/project-name"
在布局或页面中,使用绝对引用,使用site.baseurl
变量:
<link rel="stylesheet" href="{{ site.baseurl }}/css/styles.css">
然后,运行本地服务器(baseurl 选项故意为空):
$ jekyll serve --watch --baseurl=
有关文档更改的更多详细信息。