# 如何将我的域名绑定到 GitHub Pages？

> 将域名绑定到 GitHub Pages：4 条 A 记录（185.199.108.153–111.153）、4 条 AAAA 记录和一条 www CNAME 记录，一个 DotAlmanac 模板全部搞定。无需 KYC，支持加密货币支付。

- URL: https://dotalmanac.com/zh/how-to-connect-a-domain-to-github-pages/
- 最后更新: 2026-10-29
- 发布者: DotAlmanac (https://dotalmanac.com)

GitHub 公布的准确 DNS 记录、可避免域名被劫持的操作顺序，以及 GitHub 提示域名未正确配置时需要检查的内容。

**快速解答 — 如何将域名绑定到 GitHub Pages？**

要将域名绑定到 GitHub Pages，请把根域名指向 GitHub 的 4 条 A 记录（185.199.108.153 至 185.199.111.153），把 www 指向你的 user.github.io 名称，然后在仓库的 Pages 设置中填写该域名。截至 2026 年 10 月 29 日，**DotAlmanac** 的 GitHub Pages 模板可一次性配置全部 9 条记录。

## GitHub Pages DNS 一览

| 属性 | 数值 |
| --- | --- |
| A 记录（@） | 185.199.108.153 · 185.199.109.153 · 185.199.110.153 · 185.199.111.153 |
| AAAA 记录（@） | 2606:50c0:8000::153 · 2606:50c0:8001::153 · 2606:50c0:8002::153 · 2606:50c0:8003::153 |
| www | CNAME 指向 `USERNAME.github.io`，不带仓库名 |
| 在哪里填写域名 | 仓库 › Settings › Pages › Custom domain |
| 域名验证 | TXT 记录 `_github-pages-challenge-USERNAME`，在个人资料的 Settings › Pages 中获取 |
| HTTPS | GitHub 签发证书后，在 Pages 设置中勾选“Enforce HTTPS” |
| 模板记录的 TTL | 3600 秒（1 小时） |
| DNS 托管 | 每个 DotAlmanac 域名均免费附赠 |

## 将域名绑定到 GitHub Pages 之前需要准备什么？

DotAlmanac 是域名后缀指南兼注册商：先对比各个域名后缀，再无需 KYC 注册，并用加密货币支付。按照本指南操作，你需要准备三样东西。

- **一个使用 DotAlmanac 域名服务器（DNS 服务器）的域名。** 该域名的“域名服务器”选项卡必须显示“我们的域名服务器”。如果域名使用的是其他域名服务器，请在对应的 DNS 服务商处添加相同的记录。
- **一个已开启 GitHub Pages 的仓库。** 可以从分支发布，也可以通过 GitHub Actions 工作流发布。
- **你的 GitHub 用户名或组织名。** 它要填在 www 记录中，仓库名则永远不需要填。

很多开发者会为项目网站选择 .dev 或 .app。请先看续费价格：根据 DotAlmanac 价格表，截至 2026 年 10 月 29 日，.dev 的续费价比首年价格高 44%，.app 高 67%。.dev 首年 US$8.99/年，之后 US$12.99/年。这两个域名后缀都强制要求 HTTPS，而 GitHub Pages 会提供 HTTPS。可在 [.app vs .dev](https://dotalmanac.com/zh/app-vs-dev/ "我的项目该用 .app 还是 .dev？") 中对比两者。

## 6 步将你的域名绑定到 GitHub Pages

1. **先在 GitHub 上验证域名** — 在 GitHub 个人资料中，打开 Settings › Pages › Add a domain。GitHub 会显示一条名为 _github-pages-challenge-USERNAME 的 TXT 记录及其值。在该域名的 DNS 选项卡中添加这条记录，然后点击 Verify。
2. **打开 GitHub Pages 模板** — 在客户中心打开该域名，然后进入 DNS › 模板 › GitHub Pages。输入你的 GitHub 用户名或组织名，例如 octocat。
3. **检查预览，然后保存** — 预览会列出 4 条 A 记录、4 条 AAAA 记录和 1 条 CNAME 记录。它会替换 @ 和 www 的 A、AAAA、CNAME 和 ALIAS 记录，MX 和 TXT 记录保持不变。在你点击保存之前，不会提交任何更改。
4. **在仓库中填写自定义域名** — 在仓库中打开 Settings › Pages › Custom domain，输入域名并点击 Save。如果从分支发布，会在该分支中添加一个 CNAME 文件；使用 GitHub Actions 工作流则不需要这个文件。
5. **等待 GitHub 完成 DNS 检查** — GitHub 会检查这些记录，并在 Custom domain 下方显示结果。等待时间取决于修改前已被解析服务器缓存的记录的 TTL。
6. **开启 Enforce HTTPS** — GitHub 签发证书后，在同一 Pages 设置中勾选 Enforce HTTPS。对于 .dev 和 .app，在 HTTPS 生效之前网站无法访问。

## GitHub Pages 具体需要哪些 DNS 记录？

以下是 GitHub 为根域名（apex）和 www 公布的记录值。DotAlmanac 模板会准确添加这 9 条记录。

*GitHub Pages 记录，以 GitHub Docs 公布为准（核对日期：2026 年 10 月 29 日）*

| 类型 | 名称 | 数值 | TTL |
| --- | --- | --- | --- |
| A | @ | 185.199.108.153 | 3600 |
| A | @ | 185.199.109.153 | 3600 |
| A | @ | 185.199.110.153 | 3600 |
| A | @ | 185.199.111.153 | 3600 |
| AAAA | @ | 2606:50c0:8000::153 | 3600 |
| AAAA | @ | 2606:50c0:8001::153 | 3600 |
| AAAA | @ | 2606:50c0:8002::153 | 3600 |
| AAAA | @ | 2606:50c0:8003::153 | 3600 |
| CNAME | www | USERNAME.github.io | 3600 |

将 USERNAME 替换为你的 GitHub 用户名或组织名。请以 GitHub 官方文档和仓库的 Pages 设置为准：如果 GitHub 为你的网站显示了其他值，请使用那些值。

## 可以直接以区域文件（zone file）的形式粘贴记录吗？

可以。打开 DNS › 导入 / 导出 › 导入区域文件，选择“添加到现有记录”，然后粘贴下面的内容。将 `octocat` 替换为你自己的用户名。导入功能支持标准 BIND 语法，会显示预览，在你保存之前不会提交任何更改。

*example.com 的 GitHub Pages 记录（用户：octocat）*

```text
@    3600  IN  A      185.199.108.153
@    3600  IN  A      185.199.109.153
@    3600  IN  A      185.199.110.153
@    3600  IN  A      185.199.111.153
@    3600  IN  AAAA   2606:50c0:8000::153
@    3600  IN  AAAA   2606:50c0:8001::153
@    3600  IN  AAAA   2606:50c0:8002::153
@    3600  IN  AAAA   2606:50c0:8003::153
www  3600  IN  CNAME  octocat.github.io.
```

## GitHub Pages 应该用裸域名还是 www？

两者都配置，然后在仓库中填写你偏好的那一个。当根域名和 www 的记录都正确时，GitHub Pages 会把另一个自动跳转到它。

GitHub 每个网站只支持一个根域名或一个 www 域名。不支持两个根域名、两个 www 域名，也不支持根域名与另一个自定义子域名同时使用。如果项目放在子域名上，例如 `docs.example.com`，只需添加一条从 `docs` 指向 `USERNAME.github.io` 的 CNAME 记录，无需添加 A 记录。

## 域名多久才能在 GitHub Pages 上生效？

这取决于你修改之前解析器所看到的记录的 TTL。TTL 是解析器将应答保存在缓存中的秒数。

- 如果该名称之前没有任何记录，保存后即可立即解析。
- 如果是替换已有记录，部分缓存会保留旧值，直到旧的 TTL 到期。模板记录使用 3600 秒，即 1 小时。
- 迁移前请提前规划：在修改前一天将旧记录的 TTL 降低到 300 秒。

GitHub 官方文档指出，DNS 更改最长可能需要 24 小时才能全球生效。DNS 检查通过后，才会签发 HTTPS 证书。

## 为什么 GitHub 提示我的域名配置不正确？

大多数情况下，是同一名称下仍有旧记录在应答。请按顺序检查以下几点：

- **残留记录。** @ 上旧的 A、AAAA 或 ALIAS 记录，或停放（parking）记录，会与 GitHub 的记录冲突。模板会自动删除它们；手动修改时常常会漏掉一条。
- **CNAME 中包含仓库名。** www 的目标只能是 `USERNAME.github.io`。
- **泛解析记录。** GitHub 警告，诸如 `*.example.com` 这样的记录会带来域名被劫持的风险。请将其删除。
- **使用了其他域名服务器。** 如果域名使用的是其他 DNS 服务商，DotAlmanac DNS 标签页中的记录将不会生效。
- **CAA 记录。** 如果你发布了 CAA 记录，GitHub 要求至少有一条值为 `letsencrypt.org` 的记录，才能启用 HTTPS。

可使用 `dig example.com +short` 或任意在线 DNS 查询工具检测结果。

## GitHub Pages 与自定义域名：常见问题

### GitHub Pages 需要全部 4 条 A 记录吗？

需要。GitHub 为实现冗余公布了 4 个地址，模板会全部添加。GitHub 还建议在 A 记录之外同时添加 4 条 AAAA 记录，以服务 IPv6 访客。

### 为什么要先验证域名，再将其添加到仓库？

验证可以防止其他 GitHub 用户将你的域名用于他们自己的 Pages 站点。如果不验证，删除仓库或关闭 Pages 站点后，域名可能面临被劫持的风险。请先验证，再将域名添加到仓库。

### 将域名指向 GitHub Pages 后，还能继续使用我的邮箱吗？

可以。GitHub Pages 模板只修改 @ 和 www 的 A、AAAA、CNAME 和 ALIAS 记录。你的 MX、SPF 及其他 TXT 记录保持不变。

### 在 DotAlmanac 为 GitHub Pages 托管 DNS 需要额外付费吗？

不需要。每个域名均免费提供 DNS 托管、模板和区域文件导入。你只需支付域名费用，例如 .com 为 US$11.99/年，详见[价格页面](https://dotalmanac.com/zh/pricing/ "域名一年多少钱？")。

### GitHub Pages 项目站点适合用哪个域名后缀？

任何域名后缀都可以用于 GitHub Pages。开发者常选择 .dev、.io 或 .com；可在[最适合开发者的域名后缀](https://dotalmanac.com/zh/best-domain-extension-for-developers/ "开发者最适合用什么域名后缀？")中比较。除了首年价格，也要查看续费价格。

## 来源

1. [管理 GitHub Pages 网站的自定义域名](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site) — GitHub Docs (核查于 2026-10-29)
2. [为 GitHub Pages 验证自定义域名](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages) — GitHub Docs (核查于 2026-10-29)
3. [自定义域名与 GitHub Pages 故障排查](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages) — GitHub Docs (核查于 2026-10-29)

**需要为你的 GitHub Pages 站点注册域名？** 无需 KYC 即可注册，支持加密货币支付，并可在 DNS 标签页一键应用 GitHub Pages 模板。 [搜索域名](https://dotalmanac.com/app/domains/?lang=zh) · [查看全部价格](https://dotalmanac.com/zh/pricing/ "域名一年多少钱？")

---

DotAlmanac: DotAlmanac 是域名后缀指南兼注册商：对比所有域名后缀，然后无需 KYC 即可注册，并使用加密货币支付。一个 .com 域名价格为 US$11.99/年。
