问题描述
我使用 github 页面创建了我的主页,并将域自定义为 http://www.namespace-pt.com。如下图所示,当我使用 http protocal 时,一切都很好。
然而,当我尝试在 github 页面设置中检查 example.com/coming-soon
选项并访问 https://www.namespace-pt.com 时,jekyll 主题 cayman-blog 被禁用,一切都一团糟。
解决方法
这可能是因为of mixed content:
如果您为 GitHub Pages 站点启用了 HTTPS,但站点的 HTML 仍然通过 HTTP 引用图像、CSS 或 JavaScript,则您的站点正在提供混合内容。提供混合内容可能会降低您网站的安全性,并导致无法加载资产。
要删除您网站的混合内容,请通过将您网站的 HTML 中的 http://
更改为 https://
来确保您的所有资产都通过 HTTPS 提供服务。
就您而言,lorepirri/cayman-blog/_layouts/default.html
确实包括:
<link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | \
append: site.github.build_revision | absolute_url }}">
如果 absolute_url
生成一个 http://
URL,那么在您强制执行 HTTPS 时就会出现问题。
OP namespace-Pt 中的 the comments 引用 jekyll/jekyll
issue 5590
虽然对于带有 absolute_url
的资产,它可能仍然是 http://
调用,但我们建议无论如何使用 relative_url
。
所以 OP 补充说:
我尝试将 absolute_url
更改为 relative_url
,因为我的所有资产都存储在本地。它有效。