jekyll漂亮的permalinks给我WEBrick错误

jekyll漂亮的permalinks给我WEBrick错误,jekyll,permalinks,Jekyll,Permalinks,我正在用Jekyll(3.0.0测试版)开发我的博客,目前在localhost上 当我尝试实现pretty permalink并尝试访问一篇文章时,它显示了一个WEBrick错误 如果我使用/:year/:month/:day/:title.html,它就可以正常工作了。你知道为什么它不能与漂亮的永久链接一起工作吗 这是我得到的错误: /2015/08/03/未找到正在使用的permas.html。WEBrick/1.3.1(Ruby/2.1.6/2015-04-13)在本地主机上:4000一旦

我正在用Jekyll(3.0.0测试版)开发我的博客,目前在localhost上

当我尝试实现pretty permalink并尝试访问一篇文章时,它显示了一个WEBrick错误

如果我使用/:year/:month/:day/:title.html,它就可以正常工作了。你知道为什么它不能与漂亮的永久链接一起工作吗

这是我得到的错误:


/2015/08/03/未找到正在使用的permas.html。WEBrick/1.3.1(Ruby/2.1.6/2015-04-13)在本地主机上:4000

一旦您在
\u config.yml
中将Jekyll permalinks设置为
pretty
,如下所示:

permalink:pretty

并重新启动您的WEBrick服务器(使用
jekyll-serve
bundle-exec-jekyll-serve重新启动服务器实例
[如果遵循GitHub]新值才能生效,您的永久链接将不再采用
YYYY/MM/DD/title-slug.html
格式,因为它们现在是“漂亮的”。链接的新格式将是
/:categories/:year/:month/:day/:title/
。这与定义的pretty变量确定的格式一致

这对你来说意味着,因为你没有定义
类别,你的“Are permas working”帖子的原始链接不再位于
localhost:4000/2015/08/03/Are permas working.html
,而是位于
localhost:4000/2015/08/03/Are permas working/

您遇到此错误,因为在您进行更改并重新启动服务器后,很可能没有从主页导航到帖子(该主页将有指向帖子的新链接),而只是刷新了浏览器上的页面,由于页面已不存在,因此会抛出
404

奖金,杰基尔通过创建文件夹2015->08->03,然后为特定帖子创建一个文件夹,其中包含一个
index.html
,使帖子变得漂亮

此外,如果您想要“非常明确”的链接,而这些链接中没有日期,则需要手动指定:

permalink:“/:categories/:title”

这将确保隐藏
.html
扩展名,并删除日期值


编辑:从我的评论中可以看出,对永久链接使用
/:title
可能不起作用,因为与非帖子页面存在冲突,我将予以更正。如果您想要像
user.github.io/title of blog post/
这样的短永久链接,只需设置
永久链接:/:title
,就可以了但是,如果您有非帖子页面,如
关于
页面、
积分
页面,您应该在YAML frontmatter上将这些页面上的永久链接明确设置为
/about
/credits
,以避免出现标题为
关于
的博客文章,并意外删除R正在编写非post页面。

请提供更多信息,当您在
\u config.yml
中执行
permalinks:pretty
时,确切的错误是什么?当您更改
\u config.yml
@matrix中的值时,不需要重新启动服务器通常这是我遇到的错误。找不到“/2015/08/03/permas是否正常工作。html”不可用d、 WEBrick/1.3.1(Ruby/2.1.6/2015-04-13)在localhost:4000,好的,这就像你说的那样。我在每篇文章的前面添加了一个categories:post和permalink:/:categories/:title,现在我的url看起来像这个localhost:4000/post/我的permas在工作吗/如果我不想/post在那里,我想我的url看起来像localhost:4000/我的permas在工作吗/我试图添加permalinks:/:title在_config.yml中,但它不起作用。很抱歉,我是堆栈溢出新手。@ThanosBousis这很好,不必抱歉。欢迎使用它!:)你可以尝试
permalink:/:title
(不是你提到的
permalinkS
),但我检查了谷歌,它似乎不起作用。您最好的选择是删除类别的使用,或者在每篇文章中手动设置永久链接。(只需浏览每一篇博客文章,在破折号之间添加
permalink:my permas是否正常工作
,但这可能会很烦人,因为你必须为每一篇文章都这样做。@Thanosbou很抱歉错误信息,原来
permalink:/:title
工作得很好。我刚刚有机会测试了它。thoug,当我尝试它时,它没有回来h、 更新了我的答案。是的,现在这是我的网站[链接](bousis.github.io/myblog)我在“gh pages”分支中有这个,但我不知道如何将它移到master,这样我就可以得到默认的“bousis.github.io”。有什么想法吗?@ThanosBousis当然,将你的回购从“myblog”重命名为
bousis.github.io
,然后你需要(拉下新重命名的repo后),使用
git branch-m gh pages master
将分支从gh pages重命名为master,然后使用
git push-m origin master
。请参阅: