从 Jekyll 生成的页面设置 GitHub 页面站点

Posted

技术标签:

【中文标题】从 Jekyll 生成的页面设置 GitHub 页面站点【英文标题】:Setting a GitHub pages site from a Jekyll-generated page 【发布时间】:2019-11-03 11:25:48 【问题描述】:

我无法根据我阅读的教程设置新的基于 Jekyll 的 GitHub 页面站点。以下是我采取的步骤的完整列表:

    jekyll new jek_test。这创建了一个新目录。 使用 GitHub 桌面在该目录中创建 git 存储库,然后将其推送到新的 git 存储库 jek_test。 在项目设置GitHub Pages面板中,我选择master branch作为源。

到目前为止,我没有看到任何效果。导航到 https://gadial.github.io/jek_test/ 产生 404 错误。

    我在项目 Gemfile 中添加了以下两行:

source "https://rubygems.org" gem "github-pages", group: :jekyll_plugins

现在,推送到 GitHub 后,https://gadial.github.io/jek_test/ 链接正常,但加载的页面明显不正确; CSS未加载,链接错误等。

我想我遗漏了几个关键步骤,但我发现的所有教程要么“只需推送它,一切都会好起来的”,或者似乎假设我没有使用基于 Gem 的主题,这意味着所有布局、css 文件等显式存储在 _layouts 目录等中。

我这样做的方式是否正确?让 Jekyll 生成的网站在 GitHub 页面上启动并运行的最简单方法是什么?

【问题讨论】:

【参考方案1】:

您使用的是minima,这是默认设置,所以这不是问题,但是如果您查看您的about.md,您会发现它正在寻找一个名为page.xml 的布局。您目前没有_layouts 文件夹

尝试创建一个名为_layouts 的文件夹并在该文件夹中创建一个名为page.html 的布局,但是您希望它显示所有带有layout : page 的文件的内容

默认page.html可以找到here.

【讨论】:

谢谢。如果我理解正确, _layouts 文件夹应该位于 minima Gem 内(GitHub 页面应该支持)。如果我尝试在本地 bundle exec jekyll serve 该站点,它会成功,即使没有 _layouts 文件夹。也就是说,如果没有“更好”的方法,我会尝试你的建议。 不,你是对的。我调查了一下,根据最新的文档,它应该可以在没有 _layouts 文件夹的情况下工作。也许看看 at this? 要求您按照其 cmets 本身的建议更改 your Gemfile。 谢谢。我按照 cmets 中的建议删除了 Jekyll gem,并添加了 github-pages gem(我之前添加了,参见步骤 4),运行 bundle update 并推送到 github。我没有看到任何效果。 所以,我在加载网站时查看了控制台输出。这些是出现的错误消息:“GET gadial.github.io/assets/main.css net::ERR_ABORTED 404 gadial.github.io/:61 GET gadial.github.io/assets/minima-social-icons.svg net::ERR_ABORTED 404”它正在寻找gadial.github.io下的css文件,什么时候应该实际上正在查看gadial.github.io/jek_test,请尝试将_config.yml 中的baseurlurl 设置为https://gadial.github.io/jek_test 我不确定你做错了什么,只是默认情况下 github-pages 会在 your-name.github.io/ 下查找 assets 而你实际上是在 your-name.github.io/repo-name/ 托管你的网站,改变这个变量将它指向assets的正确来源【参考方案2】:

您需要将 url 更改为“https://gadial.github.io”,将 baseurl 更改为“/jek_test”。

如果这两个属性设置不正确,Jekyll 将不知道去哪里寻找你的资源。

【讨论】:

以上是关于从 Jekyll 生成的页面设置 GitHub 页面站点的主要内容,如果未能解决你的问题,请参考以下文章

Jekyll 分页器不生成页面

jekyll介绍安装.github静态页面工具

Github 操作未能在 Github 页面上部署 Jekyll 网站

如何从我的 jekyll github 页面链接中删除这个 %20?

如何让 GitHub 的 Jekyll 与 index.html 一起工作?

如何在 Jekyll GitHub Pages 上按页面分隔帖子?