Jekyll扩展无永久性标记,带降价

Jekyll扩展无永久性标记,带降价,jekyll,Jekyll,它在Jekyll中写道(使用.md格式): 还可以使用permalinkfront matter变量实现干净的URL。在上面的示例中,使用第一种方法,您可以获得URLhttp://example.com/other对于文件other.md,在文件顶部设置:permalink:/other 以下是我的首页内容示例: --- layout: page title: Contact permalink: /contact --- 当我使用jekyllserve时,一切正常,但当我构建并上传到我的静态

它在Jekyll中写道(使用
.md
格式):

还可以使用
permalink
front matter变量实现干净的URL。在上面的示例中,使用第一种方法,您可以获得URL
http://example.com/other
对于文件
other.md
,在文件顶部设置:
permalink:/other

以下是我的首页内容示例:

---
layout: page
title: Contact
permalink: /contact
---
当我使用
jekyllserve
时,一切正常,但当我
构建
并上传到我的静态主机时,一切都不起作用。Jekyll输出的文件结构对于它从文档中声明的功能没有意义

.
|-- css/
|-- index.html    # => http://example.com/
└── contact.md    # => http://example.com/contact.html
我希望能够转到
http://example.com/contact
并显示
contact.md
。我知道我可以像文档中所说的那样手动将文件放入文件夹(然后将它们全部重命名为
index.html
)来实现类似的功能,但我不想经历额外的步骤我不喜欢后面的
/
,例如
http://example.com/other/

我使用的是
jekyll3.0.1


我发现了这些问题,但它们没有解决我面临的问题


我认为您的操作是正确的,这只是正确配置Web服务器的问题(假设它支持删除扩展)。它在本地正常工作,因为内置的jekyll Web服务器在默认情况下可以这样做。文档在此处提供了相关信息:

在AWS S3上,它说您可以通过上传完全没有扩展名的文件,然后将内容类型设置为text/html来承载无扩展名URL。我认为不可能让jekyll将
contact.html
输出为没有扩展名的
contact
。因此,如果web服务器支持,您可以让它删除扩展(在s3上,我使用尾随/)

这也有一些有趣的信息:

我还在我的jekyll博客中使用clean permalink

这是我的首要问题:

---
layout: directory
title: About
permalink: about/
---

有什么不同吗,它是URL末尾的尾随斜杠。我知道,您不希望在URL的末尾看到任何尾随斜杠,但为此您需要,因为Jekyll会生成所有的post/page,比如/folder/index.html。

您尝试过这个解决方案吗?在
\u config.yml
中设置
permalinks:/:title
,看起来与我以前的答案类似:如果它有效,我将发布一个答案:)我的网站设置与您想要的类似,其中将在文件夹中创建一个文件夹
联系人
,它里面有一个
index.html
感谢您提供了关于nginx的文章链接,这篇文章非常有见解。是的,您对webserver配置的看法是正确的。我猜有文件,有文件…:)Github上的线程也不错。