And*_*rio 23 jekyll github-pages
当我运行jekyll --server我的网站时可以使用http://localhost:4000/,但是当我部署到GitHub项目页面时,它可以在http://username.github.com/projectname/.
这意味着在引用样式表和其他资源时我不能使用绝对URL.当例如index.html和使用相同的布局时,相对URL会中断2012/01/01/happy-new-year.html.将样式表和其他资源添加到GitHub Project Pages存储库的接受/好方法是什么?
交叉发布到GitHub问题.
Pab*_*rro 29
出现此问题是因为根目录始终是用户和项目页面中的用户URL(user.github.com).我找到了一个解决方案:url将_config.yml文件中的变量配置到github项目页面:
safe: true
...
url: "http://user.github.io/project-name"
Run Code Online (Sandbox Code Playgroud)
然后,在布局中,使用绝对引用,使用site.url变量来做到这一点:
<link rel="stylesheet" href="{{ site.url }}/css/styles.css">
Run Code Online (Sandbox Code Playgroud)
并运行服务器:
$jekyll --server --url=http://localhost:4000
Run Code Online (Sandbox Code Playgroud)
命令行选项以本地模式覆盖配置文件中的设置.通过这些设置,我可以获得指向正确位置的所有链接,这些链接都以github和本地模式托管.
UPDATE:化身1.0由于化身达到1.0时,aforemetioned选项server和url与其相应的命令行选项--server和--url已被弃用.新版本的说明:
在_config.yml文件中,添加变量baseurl(不带斜杠):
baseurl: "http://user.github.io/project-name"
Run Code Online (Sandbox Code Playgroud)
在布局或页面中,使用绝对引用,使用site.baseurl变量:
<link rel="stylesheet" href="{{ site.baseurl }}/css/styles.css">
Run Code Online (Sandbox Code Playgroud)
然后,运行本地服务器(baseurl选项有意为空):
$ jekyll serve --watch --baseurl=
Run Code Online (Sandbox Code Playgroud)
有关文档更改的更多详细信息.
小智 0
我使用 jekyll-bootstrap 并在端口 4000 上进行本地部署,但我的 github 页面 url 是 user.github.com...我认为这取决于您最初创建存储库的方式。最初我使用了 github 提供的自动页面构建器,它以非常类似于向导的方式创建了存储库。
我只是按照以下步骤操作:
希望有帮助
| 归档时间: |
|
| 查看次数: |
7685 次 |
| 最近记录: |