跳转到内容
搜索文档

将完整设置转换为部分设置

最后更新 查看 MarkdownAgent 设置

如果您最初配置了主要设置(完整),之后可以将 zone 转换为使用 CNAME 设置(也称为部分设置)。本指南假定您的 zone 已处于活动状态。

CNAME 设置允许您在单个子域名上使用 Cloudflare 的反向代理,同时使用其他权威 DNS 提供商。


开始之前

考虑 CNAME 设置的限制

  • CNAME 设置要求每个已代理的主机名都有一条 CNAME 记录,但根据 RFC 1912 ↗,CNAME 记录不允许出现在 zone apex(example.com)。使用 CNAME 设置时,只有在权威 DNS 提供商支持 CNAME flattening ↗(或等效的 ALIAS/ANAME 记录),或者您创建直接指向 Cloudflare anycast IP 地址的 A/AAAA 记录时,才能代理 zone apex。否则,您只能代理子域名。

  • 一旦您的 zone 使用 CNAME 设置,在仪表板上您将只能创建 A、AAAA 和 CNAME 记录,这些是可以代理的 DNS 记录类型。

规划 SSL/TLS 证书

只有在指向 {your-hostname}.cdn.cloudflare.net 的每条 CNAME 记录就位,并如下方说明使用 TXT 记录验证域名所有权之后,才会为您已代理的子域名预配新的 Universal SSL 证书。

为避免停机,请将 Universal SSL 证书替换为 advanced certificate,该证书在转换期间会保留。转换后,您可以选择配置委派 DCV。


1. 准备新的 DNS 提供商

  1. 导出 zone 文件

    要通过仪表板导出记录:

    1. 在 Cloudflare 仪表板中,前往 DNS Records(DNS 记录) 页面。

      Go to Records ↗
    2. 选择 Import and Export(导入和导出)。

    3. 选择 Export(导出)。

    要通过 API 导出记录,请发送 GET 请求。

    Required API token permissions

    At least one of the following token permissions is required:
    • DNS Read
    • DNS Write
    Export DNS Recordsbash
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/export" \
    	--request GET \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
  2. 将 zone 文件导入到新的主 DNS 提供商。

  3. 在新的权威 DNS 提供商处,创建或更新记录,使您希望通过 Cloudflare 代理的每个主机名都有指向 {your-hostname}.cdn.cloudflare.net 的 CNAME 记录。

    权威 DNS 提供商处的 CNAME 记录示例

    www.example.com 的 CNAME 记录为:

    www.example.com CNAME www.example.com.cdn.cloudflare.net

2. 转换 zone

  1. 在 Cloudflare 仪表板上,前往 zone 的 Overview(概览) 页面。

  2. 选择 Convert to CNAME DNS Setup(转换为 CNAME DNS 设置),然后选择 Convert(转换) 确认。

  3. 保存 Verification TXT Record(验证 TXT 记录) 中的信息,并在新的权威 DNS 提供商处添加该记录。如果丢失该信息,您也可以在 DNS Records(DNS 记录) ↗ 页面的 Verification TXT Record(验证 TXT 记录) 下找到它。

    验证记录示例

    example.com 的验证记录可能为:

    Type Name Content
    TXT cloudflare-verify.example.com 966215192-518620144
  1. 使用 Edit Zone 端点,将 type 设为 partial 以转换 zone 类型。

  2. 记下 API 响应中 verification_key 下返回的值,并在新的权威 DNS 提供商处添加相应的 TXT 记录。

    验证记录示例

    example.com 的验证记录可能为:

    Type Name Content
    TXT cloudflare-verify.example.com 966215192-518620144

3. 更新 nameserver

在域名 registrar 处更新 nameserver,使其指向新的权威 DNS 提供商。确保移除 Cloudflare nameserver。

4. 清理 Cloudflare 上的 DNS 记录

在 Cloudflare 中,移除所有非 A、AAAA 或 CNAME 类型的记录,并移除转换后您不希望代理的主机名的任何 A、AAAA 或 CNAME 记录。清理后,Cloudflare 中应仅保留您希望代理的主机名的 A、AAAA 或 CNAME 记录,且这些主机名在新的权威 DNS 提供商处应有指向 {your-hostname}.cdn.cloudflare.net 的 CNAME 记录。

这篇文档对您有帮助吗?