我通过Amazon S3托管一个Jekyll网站 . 我让Jekyll实例在本地机器上运行,这样我们就可以向它发送帖子并自动管道 . 这很有效 .
问题在于两个实例(feed.xml和sitemap.xml)Jekyll在html spit中使用0.0.0.0:4000到_site而不是在_config.yml中设置的site.url . 如果我没有在jekyll服务器上设置--host = 0.0.0.0标志,那么而不是localhost:4000被设置为url而不是site.url .
我该怎么做才能使网站在我们的本地网络上运行,但仍然有正确的URL发布到xml文件?
3 回答
您可以定义_config_dev.yml,您可以在其中覆盖配置项 .
在localhost上,您将运行
这是在https://github.com/Phlow/feeling-responsive上完成的,并且feed在localhost上正常工作
从_config.yml中删除
url:~
键并使用{{site.baseurl}}
添加资产如果您最近迁移到Jekyll 3.3.1,那么您的site.url将无法运行,因为您处于开发环境中 .
要在 生产环境 环境中测试,请运行
JEKYLL_ENV=production bundle exec jekyll serve
命令 .我过去也遇到过这个问题,结帐我jekyll isssue.
对于站点 Map 和XML Feed,您可以在配置文件中设置另一个变量,例如
并在您的XML站点 Map / Feed中使用site.fullurl而不是site.url .