跳到主要内容

将域名指向 HostingSwift

本指南译自英文。部分链接页面仅提供英文版本。

A 记录、CNAME、TTL,以及如何在不停机的情况下迁移线上网站。

连接域名是大多数人觉得最繁琐的一步,主要因为 DNS 是看不见的。下面是完整的全貌。

两条关键记录

A 记录 — 将主机名映射到 IPv4 地址。

text
example.com.        A      203.0.113.10
www.example.com.    A      203.0.113.10

CNAME — 将主机名映射到另一个主机名。

text
www.example.com.    CNAME  yoursite.hostingswift.example

当你有稳定的 IP 时使用 A 记录。当目标 IP 可能变化、你希望跟随名称时使用 CNAME。在严格的 DNS 中,不能在域名根(example.com)设置 CNAME——许多服务商提供替代方案(“ALIAS”“ANAME”或扁平化 CNAME),只要注册商支持,我们也支持。

实际操作

  1. 找到域名的 DNS 设置——在 HostingSwift 面板的“域名”中,或在你的注册商处。

  2. 为 @(根域名)添加 A 记录 → 你的服务 IP。

  3. 为 www 添加 A 记录或 CNAME → 相同的 IP 或你的托管主机名。

  4. 保存。变更会在记录的 TTL 内传播。

TTL:决定变更速度的旋钮

每条记录都有 TTL(生存时间)——解析器可以缓存答案的时长。

  • 低 TTL(300 秒或 60 秒) — 变更生效很快。在计划迁移前使用。

  • 高 TTL(3600 秒以上) — 查询更少,但变更更慢。

迁移线上网站之前,提前一天把 TTL 降到 300 秒,完成迁移后再调回。这样对所有人来说切换几乎是即时的。

零停机迁移线上网站

  1. 搭建新网站,并在临时主机名上或通过编辑本地 hosts 文件进行测试。

  2. 对即将修改的记录降低 TTL。

  3. 将 A 记录切换到新 IP。

  4. 至少在旧 TTL 期间保持旧网站运行,然后再下线。

  5. 将 TTL 恢复为正常值。

包括不可遗漏的邮件记录在内的完整细节,请见将你的托管迁移到 HostingSwift。

常见错误

  • 忘记 www。 根域名和 www 是不同的名称,两者都要设置。

  • 同时更改域名服务器和 A 记录。 选择一种方式,混用会造成混乱。

  • 忽略 TTL,然后为“简单”的变更苦等一小时。

  • 弄坏邮件。 如果邮件托管在别处,编辑 DNS 时不要删除 MX 记录。

  • IP 输入错误。 DNS 会毫不犹豫地发布一个错误的地址。

延伸阅读