我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

使用 HTTPS 保护 GitHub Pages 站点

GitHub 页面 可用于具有 GitHub Free 的公共仓库,以及具有 GitHub Pro、GitHub Team、GitHub Enterprise Cloud 和 GitHub Enterprise Server 的公共和私有仓库。更多信息请参阅“GitHub 的产品。”

HTTPS 增加一层加密,用于防止其他人窥探或篡改您的站点的流量。 您可对 GitHub 页面 站点强制实施 HTTPS,从而将所有 HTTP 请求透明地重定向到 HTTPS。

所有 GitHub 页面 站点(包括使用自定义域正确配置的站点)均支持 HTTPS 和 HTTPS 强制实施。 有关自定义域的更多信息,请参阅“使用具有 GitHub 页面 的自定义域”。有关使用自定义域的 HTTPS 疑难解答的信息,请参阅“自定义域疑难解答”。

对于使用 2016 年 1 月 15 日后创建的 github.io 域的 GitHub 页面 站点,需要强制实施 HTTPS。 如果您的 GitHub 页面 站点在 2016 年 1 月 15 日之前创建,您可以手动启用 HTTPS 强制实施。

提示: GitHub 页面 站点不应该用于敏感事务,例如发送密码或信用卡号码。

对您的 GitHub 页面 站点强制实施 HTTPS

  1. 在 GitHub 上,导航到仓库的主页面。

  2. 在仓库名称下,单击 Settings(设置)

    仓库设置按钮

  3. 在 "GitHub Pages" 下,选择 Enforce HTTPS(强制实施 HTTPS)

    强制实施 HTTPS 复选框

解决具有混合内容的问题

如果为您的站点启用 HTTPS,且站点的 HTML 仍通过 HTTP 引用图像、CSS 或 JavaScript,则您的站点提供混合内容,并且您加载前端资源时可能会遇到问题。 提供混合内容还会降低站点的安全性。

要删除站点的混合内容、提高站点的安全性和解决与加载混合内容有关的问题,请编辑站点的 HTML 文件并将 http:// 更改为 https://,以使所有前端资源均通过 HTTPS 提供。

对于使用 Jekyll 的 GitHub Pages 站点,您的 HTML 文件最有可能存储在 _layouts 文件夹中。 一般来说,CSS 位于 HTML 文件的 <head> 部分中。 JavaScript 通常位于 <head> 部分中或结束 </body> 标记之前。 图像通常位于 <body> 部分中。

提示:如果无法在您的站点中找到前端资源的位置,请尝试在文本编辑器中或 GitHub 上搜索站点代码 http

如何在 HTML 文件中引用前端资源的示例

前端资源类型 HTTP HTTPS
CSS <link rel="stylesheet" href="http://example.com/css/main.css"> <link rel="stylesheet" href="https://example.com/css/main.css">
JavaScript <script type="text/javascript" src="http://example.com/js/main.js"></script> <script type="text/javascript" src="https://example.com/js/main.js"></script>
图像 <A HREF="http://www.somesite.com"><IMG SRC="http://www.example.com/logo.jpg" alt="Logo"></a> <A HREF="https://www.somesite.com"><IMG SRC="https://www.example.com/logo.jpg" alt="Logo"></a>

延伸阅读

问问别人

找不到要找的内容?

联系我们