在 GitHub Pages 上通过 Cloudflare 强制实施 HTTPS
在 GitHub Pages 上通过 Cloudflare 强制实施 HTTPS
POSCDevelopmentTeam在设置 GitHub Pages 时,当你使用自定义域名时,可以选择强制实施 HTTPS,这很棒。然而,当你使用 Cloudflare 作为 DNS 提供商时,你可能会发现启用 HTTPS 的选项是灰色的,GitHub 会向你显示以下错误:
由于你的域名未正确配置以支持 HTTPS,因此你的网站无法使用此功能。
这通常是因为 Cloudflare 代理已启用(橙色云图标),而 GitHub 发现已经存在一个证书,因此无法自行颁发证书。
解决方法是禁用 Cloudflare 中域名或子域名的代理:
Cloudflare 代理设置处于关闭状态
完成此操作后,返回到 GitHub Pages 设置中,移除然后重新添加自定义域名。现在你应该能够启用 HTTPS 了:
已启用 GitHub Pages HTTPS 设置
完成后,你可以重新启用 Cloudflare 中的代理,但请注意,当 GitHub 颁发的证书需要在三个月后自动续期时,Cloudflare 代理状态将再次导致问题。最好将指向 GitHub 的 CNAME 记录设为“灰云”状态以防止这种情况发生。