Pra*_*jan 7 rest routes jekyll
网站http://example.com的根目录正确识别index.html并呈现它.以类似的方式,我希望http://example.com/foo获取目录根目录中的foo.html.使用此功能的网站是www.zachholman.com.我在Github看过他的代码.但我仍然无法找到它是如何完成的.请帮忙.
pst*_*ler 11
这个功能实际上在Jekyll中可用.只需将以下行添加到_config.yml:
permalink: pretty
Run Code Online (Sandbox Code Playgroud)
这将启用没有.html扩展名的帖子和页面的链接,例如
/about/ 代替 /about.html/YYYY/MM/DD/my-first-post/ 代替 YYYY-MM-DD-my-first-post.html但是,你失去了定制永久链接的能力......而且尾随斜线非常难看.
编辑:尾部斜线似乎是设计的
实际上是服务器需要调整,而不是jekyll。默认情况下,jekyll 将生成扩展名为 .html 的文件。可能有一种解决方法,但您不太可能真的想走那条路。相反,您需要让 Web 服务器知道您希望在使用文件的基本名称(无扩展名)调用 URL 时提供这些文件。
如果您的站点通过 Apache Web 服务器提供服务,您可以启用“MultiViews”选项。在大多数情况下,您可以使用以下行在站点根目录中创建 .htaccess 文件:
Options +MultiViews
Run Code Online (Sandbox Code Playgroud)
启用此选项后,当 Apache 收到以下请求时:
http://example.com/foo
Run Code Online (Sandbox Code Playgroud)
它将提供该文件:
/foo.html
Run Code Online (Sandbox Code Playgroud)
请注意,必须设置 Apache 服务器以允许在 htaccess 文件中设置该选项。如果没有,您需要在 Apache 配置文件本身中执行此操作。如果您的网站托管在另一个网络服务器上,您需要寻找等效的设置。