本文最后更新于83 天前,其中的信息可能已经过时,如有错误请发送邮件到2778680280@qq.com
Github Page 作为 Github 推出的静态网站托管服务,默认会为每个仓库分配类似 https://用户名.github.io/仓库名/ 的域名。但默认域名缺乏个性化,很多时候我们希望使用自己的专属域名来访问网站。
一、域名购买指南
1. 购买渠道选择
购买域名需根据访问需求选择合适的渠道,核心差异如下:
- 国内域名:需完成备案等认证流程,耗时较长(通常数天),且由于 Github Page 服务器位于国外,国内域名无法与 Github Page 完成映射,不推荐选择。
- 国外域名:无需备案,购买和部署仅需数小时,适配 Github Page 服务,推荐选择主流平台。
2. 推荐购买平台(支持支付宝)
- 雨云(本文实操平台)
- Dynadot
- Porkbun
- NameSilo
3. 购买注意事项
优先选择大型正规平台,保障域名所有权和后续管理服务的稳定性,避免选择小众不知名平台导致域名丢失或管理困难。
二、自定义域名验证(防劫持必备)
域名验证的核心目的是防止恶意域名劫持,确保域名归属权,步骤如下:
1. Github 端验证配置
- 登录 Github 后,点击右上角头像,在下拉菜单中选择
Settings; - 在左侧导航栏找到
Code, planning, and automation分类,点击Pages; - 在
Add a verified domain区域输入需要验证的域名(如 aiproducthome.top),点击Add domain; - 系统会生成验证信息,包含 TXT 记录的主机名(hostname)和验证码(一串数字 + 英文的字符串),复制该信息备用。
2. 域名服务商端 DNS 配置(以 GoDaddy 为例)
- 登录购买域名的平台,进入对应域名的管理界面,找到
DNS Records(DNS 记录)配置入口; - 点击
Add New Record,选择记录类型为TXT; - 按要求填写配置信息:
- Name:填写 Github 生成的主机名(以
_github-pages开头); - Value:粘贴 Github 提供的验证码;
- TTL:保持默认值(如 600 秒)即可;
- Name:填写 Github 生成的主机名(以
- 点击
Save保存配置。
3. 完成验证
返回 Github 的验证页面,点击 Verify 按钮。虽然官方提示可能需要 24 小时生效,但实际通常几分钟内即可完成验证。
三、自定义域名映射配置
验证完成后,需通过 DNS 记录配置实现域名与 Github Page 的映射,分为顶级域名和子域名两种场景。
1. 顶级域名(Apex 域名)配置(如 aiproducthome.top)
顶级域名即不含子域名前缀的基础域名,配置方式如下:
- 进入域名服务商的 DNS 记录配置界面,点击
Add New Record; - 记录类型选择
A(Address Record),该类型用于将域名映射到 IPv4 地址; - 配置信息填写:
- Name:填写
@(代表顶级域名); - Value:填写 Github Page 官方提供的 4 个 IPv4 地址(通用地址,所有用户均可使用,在下面可直接复制):
- TTL:保持默认;
- Name:填写
plaintext
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
- 点击
Save保存,如需添加多个 IP 地址,可通过Add another value批量添加。
2. 子域名配置(如 www.aiproducthome.top)
子域名通常以 www、blog 等前缀开头,需通过 CNAME 记录配置:
- 点击
Add New Record,记录类型选择CNAME(Canonical Name Record),用于域名别名映射; - 配置信息填写:
- Name:填写子域名前缀(如
www); - Value:填写 Github Page 默认域名(格式为
用户名.github.io,如 eternaldeath.github.io); - TTL:保持默认;
- Name:填写子域名前缀(如
- 点击
Save保存。
3. Github 仓库最终配置
- 进入需要配置自定义域名的 Github 仓库,点击上方
Settings; - 在左侧
Code and automation分类中选择Pages; - 在
Custom domain输入框中填写你的顶级域名(如 aiproducthome.top),点击Save; - 系统会自动进行 DNS 检查,检查通过后,页面顶部会显示
Your site is live at https://你的域名/,表示配置成功。
四、核心记录类型说明
| 记录类型 | 作用说明 |
|---|---|
| A(Address Record) | 将域名映射到 IPv4 地址,适用于顶级域名配置 |
| AAAA(IPv6 Address Record) | 将域名映射到 IPv6 地址,本文未涉及(Github Page 优先支持 IPv4) |
| CNAME(Canonical Name Record) | 实现域名别名映射(子域名→默认 Github 域名),适用于子域名配置 |
五、关键注意事项
- 资源加载问题:如果你的静态网站(如 Hexo 搭建)之前配置了默认 Github 域名,需在网站配置文件中更新为新的自定义域名(如 Hexo 的
_config.yml),否则可能出现 CSS 样式丢失、图片无法加载等问题。 - 生效时间:DNS 配置修改后,需在全网 DNS 服务器中传播,通常数分钟到几小时内生效,个别情况可能需要 24 小时,耐心等待即可。
- HTTPS 启用:配置完成后,可在 Github Page 设置中开启
Enforce HTTPS,通过加密传输保障访问安全。
参考资料
- Github 官方文档:Configure a custom domain
- Cloudflare 文档:DNS record types
- CSDN博客:https://blog.csdn.net/qq_34902437/article/details/140298754









