我已经开设了一个包含几页和几篇博文的小型网站。它托管在我的组织服务器上,我将_site /目录的所有内容写入网站的子目录。因此,Jekyll站点位于http:// myusername.foobar.foo/thiswebsite/。
在我的_config.yml
中baseurl: "/thiswebsite"
url: "http:// myusername.foobar.foo"
现在所有页面都能正确显示。但博客文章不是。
在每篇博文的YAML前台:
permalink: /:title.html
然后我最终在index.html页面上生成链接到http:// myusername.foobar.bar/blog-title.html上的博客帖子,但实际的博客文章位于http:// myusername.foobar.bar /thiswebsite/blog-title.html。因此,如果人们点击index.html上找到的链接,他们就会看到404。
在index.html上我有:
{% for post in site.posts %}
<h2><a href="{{ post.url }}">{{ post.title }}</a></h2>
<blockquote>
{{ post.excerpt }}
</blockquote>
{% endfor %}
我原以为{{ post.url }}
会自动为帖子插入正确的网址,但显然没有发生。 :(
我在哪里搞砸了?
( Jekyll 3.1.2版)
注意:http://之后的空格是故意的,因为StackExchange认为我发布链接并且显然不允许这样做。在我的实际markdown和html中,它们是正确的URL。
答案 0 :(得分:0)
链接到集合项(帖子是集合项)或页面:
例如:<a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
或<a href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
资源链接(图片,脚本,CSS,......)也是如此。
例如:<link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl }}">
或<script src="{{ site.baseurl }}/js/script.js"></script>