我使用Jekyll创建了一个静态网站,最近从Jekyll 2.5.3升级到3.1.1。由于Jekyll版本3 .html扩展名从内部链接中删除,这给了我们很好的网址。我喜欢这个。
由于所有页面仍然使用html扩展名创建,因此现在使用HTML Proofer验证站点失败,因为它检测到死链接。 这打破了jekyllrb ci docs上我的持续集成系统(根据Travis CI设置)。
所以,我喜欢.html-less链接以及html-proofer检查我的内部链接。但是如何使用html-proofer验证.html-less链接?
这个问题有一个Jekyll talk;以及Github PR。对我帮助不大。
答案 0 :(得分:2)
我在https://github.com/gjtorikian/html-proofer/pull/311有一个新的工作PR。您可以像这样使用它,直到合并为止:
Gemfile:gem 'html-proofer', github: "Floppy/html-proofer", branch: "jekyll-3-extensionless-links"
它添加了assume_extension
选项:HTML::Proofer.new("./_site", assume_extension: ".html").run
如果您使用二进制文件,也可以使用--assume-extension=.html
命令行开关。
编辑:这是在我正在使用的html-proofer 3.0.4中发布和提供的。 api略有不同,assume_extension
已成为开关,默认为false。所以你要这样做:
HTML::Proofer.new("./_site", assume_extension: true).run
或
htmlproofer ./Site --assume-extension
如果您希望页面的扩展名与默认的.html不同,则它与扩展程序选项结合使用。