支持的自定义域
Tip
建议在将自定义域添加到存储库之前先对其进行验证,以提高安全性并避免接管攻击。 有关详细信息,请参阅“验证 GitHub Pages 的自定义域”。
GitHub Pages 可使用两种类型的域名:子域名和 apex 域名。 有关不支持的自定义域的列表,请参阅“自定义域和 GitHub Pages 疑难解答”。
支持的自定义域类型 | 示例 |
---|---|
www 子域 | www.example.com |
自定义子域 | blog.example.com |
Apex 域 | example.com |
可以为站点设置顶点和/或 www
子域配置。 有关 apex 域的详细信息,请参阅对 GitHub Pages 站点使用顶点域。
建议始终使用 www
子域,即使同时使用顶点域也是如此。 当你使用顶点域创建新网站时,我们会自动尝试保护 www
子域,以便在提供你的站点内容时使用,但你需要进行 DNS 更改才能使用 www
子域。 如果你配置 www
子域,我们会自动尝试保护相关的顶点域。 有关详细信息,请参阅“管理 GitHub Pages 站点的自定义域”。
跨多个仓库使用自定义域
如果不为用户或组织网站设置自定义域,则默认情况下,同一自定义域将用于同一帐户所拥有的所有项目网站。 有关站点类型的详细信息,请参阅“关于 GitHub Pages”。
例如,如果你的用户站点的自定义域为 www.octocat.com
,并且你拥有一个未配置自定义域且从名为 octo-project
的存储库发布的项目站点,则该存储库的 GitHub Pages 站点将在 www.octocat.com/octo-project
上提供。
你可以通过将自定义域添加到单个仓库来替代默认的自定义域。
Note
以私密方式发布的项目站点的 URL 不受用户或组织站点的自定义域的影响。 有关以私密方式发布站点的详细信息,请参阅“更改 GitHub Pages 站点的可见性”。
要删除默认的自定义域,必须从用户或组织网站中移除自定义域。
对您的 GitHub Pages 网站使用子域名
子域名是根域前 URL 的一部分。 你可以将子域配置为 www
或站点的独特部分,如 blog.example.com
。
DNS 提供商为子域配置 CNAME
记录。 有关详细信息,请参阅“管理 GitHub Pages 站点的自定义域”。
www
子域
www
子域是最常用的子域类型。 例如,www.example.com
包括 www
子域。
www
子域是最稳定的自定义域类型,因为 www
子域不受 GitHub Enterprise Cloud 服务器的 IP 地址变动的影响。
自定义子域
自定义子域是一种不使用标准 www
变体的子域。 自定义子域主要在您需要将网站分为两个不同的部分时使用。 例如,可以创建一个名为 blog.example.com
的站点并独立于 www.example.com
自定义该部分。
对您的 GitHub Pages 网站使用 apex 域
顶点域是不包含子域的自定义域,如 example.com
。 Apex 域也称为基础域、裸域、根 apex 域或区域 apex 域。
DNS 提供商为顶点域配置 A
、ALIAS
或 ANAME
记录。 有关详细信息,请参阅“管理 GitHub Pages 站点的自定义域”。
如果使用 apex 域作为自定义域名,建议还设置一个 www
子域。 如果通过 DNS 提供程序配置每种域类型的正确记录,GitHub Pages 将自动在域之间创建重定向。 例如,如果将 www.example.com
配置为站点的自定义域,并且为顶点和 www
域设置了 GitHub Pages DNS 记录,则 example.com
将重定向到 www.example.com
。 请注意,自动重定向仅适用于 www
子域。 自动重定向不适用于任何其他子域,如 blog
。 有关详细信息,请参阅“管理 GitHub Pages 站点的自定义域”。
保护 GitHub Pages 网站的自定义域
如果 GitHub Pages 站点已禁用,但设置了自定义域,则存在域接管的风险。 在您的网站被禁用时拥有通过 DNS 提供商配置的自定义域,可能会导致其他人在您的一个子域上托管网站。
验证自定义域可防止其他 GitHub 用户将你的域用于他们的存储库。 如果你的域未经过验证,并且 GitHub Pages 站点已禁用,则应立即通过 DNS 提供商更新或删除 DNS 记录。 有关详细信息,请参阅“验证 GitHub Pages 的自定义域”和“管理 GitHub Pages 站点的自定义域”。
有许多原因会导致您的网站被自动禁用。
- 如果您从 GitHub Pro 降级到 GitHub Free,则目前发布自您的帐户中私有仓库的任何 GitHub Pages 站点都会取消发布。 有关详细信息,请参阅“降级帐户的计划”。
- 如果将私人仓库转让给使用 GitHub Free 的个人帐户,仓库将失去对 GitHub Pages 功能的访问,当前发布的 GitHub Pages 站点将取消发布。 有关详细信息,请参阅“转让仓库”。