codecamp

关于自定义域名和 GitHub 页面

GitHub Pages 支持使用自定义域名,或者将网站的 URL 根目录从默认值(如 octocat.github.io)更改为您拥有的任何域名。

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

支持的自定义域

GitHub Pages 可使用两种类型的域名:子域名和 apex 域名。 有关不支持的自定义域名列表,请参阅“自定义域名和 GitHub Pages 疑难解答“。

支持的自定义域类型 示例
www 子域 www.example.com
自定义子域 blog.example.com
Apex 域 example.com

您可以为您的网站设置一种或两种自定义域。 建议始终使用 www 子域名,即使您也同时使用 apex 域。 更多信息请参阅“对您的 GitHub Pages 网站使用 apex 域”。

在配置用户或组织网站的自定义域后,自定义域名将替换未配置自定义域的帐户所拥有的任何项目网站 URL 的 <user>.github.io<organization>.github.io 部分。 例如,如果您的用户网站的自定义域名为 www.octocat.com,并且您拥有一个未自定义域名的项目网站,该网站从名为 octo-project 的仓库发布,则该仓库的 GitHub Pages 网站将在 www.octocat.com/octo-project 上提供。

对您的 GitHub Pages 网站使用子域名

子域名是根域前 URL 的一部分。 您可以将子域名配置为 www 或网站的独特部分,如 blog.example.com

子域名配置通过 DNS 提供商使用 CNAME 记录配置。 更多信息请参阅“管理 GitHub Pages 网站的自定义域

www 子域

www 子域名是最常用的一种子域名。 例如,www.example.com 包含 www 子域名。

www 子域名是最稳定的一种自定义域,因为 www 子域名不受 GitHub 服务器 IP 地址变动的影响。 您的网站加载速度也会更快,因为拒绝服务 (DoS) 攻击保护可以更有效地实施。

自定义子域

自定义子域是一种不使用标准 www 子域的子域。 自定义子域主要在您需要将网站分为两个不同的部分时使用。 例如,您可以创建一个名为 blog.example.com 并自定义该部分与 www.example.com 分开。

对您的 GitHub Pages 网站使用 apex 域

Apex 域是一个不包含子域的自定义域,如 example.com。 Apex 域也称为基础域、裸域、根 apex 域或区域 apex 域。

Apex 域配置通过 DNS 提供商使用 A, ALASANAME 记录配置。 更多信息请参阅“管理 GitHub Pages 网站的自定义域

如果使用 apex 域作为自定义域名,建议还设置一个 www 子域。 如果通过 DNS 提供程序配置每种域类型的正确记录,GitHub Pages 将自动在域之间创建重定向。 例如,如果您配置 www.example.com 作为站点的自定义域,并且为 apex 和 www 域设置了 ALIASCNAME 记录,则 example.com 将重定向到 www.example.com。 更多信息请参阅“管理 GitHub Pages 网站的自定义域”。

在 GitHub Pages 站点禁用时更新自定义域

如果您的 GitHub Pages 站点设置了自定义域,并且站点已禁用,您应立即通过 DNS 提供商更新或删除 DNS 记录,以避免域接管的风险。 在您的网站被禁用时拥有通过 DNS 提供商配置的自定义域,可能会导致其他人在您的一个子域上托管网站。 更多信息请参阅“管理 GitHub Pages 网站的自定义域

有许多原因会导致您的网站被自动禁用。

  • 如果您从 GitHub Pro 降级到 GitHub Free,则目前发布自您的帐户中私有仓库的任何 GitHub Pages 站点都会取消发布。 更多信息请参阅“Downgrading your GitHub 结算方案”。
  • 如果将私人仓库转让给使用 GitHub Free 的个人帐户,仓库将失去对 GitHub Pages 功能的访问,当前发布的 GitHub Pages 站点将取消发布。 更多信息请参阅“转让仓库”。

延伸阅读

排查 GitHub Pages 站点的 Jekyll 构建错误
管理 GitHub Pages 站点的自定义域
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

GitHub 身份验证

在 GitHub 上管理订阅和通知

在 GitHub 上管理活动的订阅

GitHub 组织和团队

GitHub 管理对组织仓库的 Git 访问

GitHub 计费和付款

GitHub 使用议题和拉取请求进行协作

GitHub 在具有代码质量功能的仓库上进行协作

管理在 GitHub 上的工作

GitHub 建立强大的社区

GitHub 管理仓库

GitHub 自定义 GitHub 工作流程

在 GitHub Marketplace 中购买并安装应用程序

通过 GitHub Jobs 寻找人才

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }