跳转到内容
搜索文档

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

最后更新 查看 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 记录。

这篇文档对您有帮助吗?