如果您最初配置了主要设置(完整),之后可以将 zone 转换为使用 CNAME 设置(也称为部分设置)。本指南假定您的 zone 已处于活动状态。
CNAME 设置允许您在单个子域名上使用 Cloudflare 的反向代理,同时使用其他权威 DNS 提供商。
-
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 记录类型。
只有在指向 {your-hostname}.cdn.cloudflare.net 的每条 CNAME 记录就位,并如下方说明使用 TXT 记录验证域名所有权之后,才会为您已代理的子域名预配新的 Universal SSL 证书。
为避免停机,请将 Universal SSL 证书替换为 advanced certificate,该证书在转换期间会保留。转换后,您可以选择配置委派 DCV。
-
导出 zone 文件
要通过仪表板导出记录:
-
在 Cloudflare 仪表板中,前往 DNS Records(DNS 记录) 页面。
Go to Records ↗ -
选择 Import and Export(导入和导出)。
-
选择 Export(导出)。
要通过 API 导出记录,请发送 GET 请求。
At least one of the following token permissions is required:Required API token permissions
DNS ReadDNS 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" -
-
将 zone 文件导入到新的主 DNS 提供商。
-
在新的权威 DNS 提供商处,创建或更新记录,使您希望通过 Cloudflare 代理的每个主机名都有指向
{your-hostname}.cdn.cloudflare.net的 CNAME 记录。权威 DNS 提供商处的 CNAME 记录示例
www.example.com的 CNAME 记录为:www.example.com CNAME www.example.com.cdn.cloudflare.net
-
在 Cloudflare 仪表板上,前往 zone 的 Overview(概览) 页面。
-
选择 Convert to CNAME DNS Setup(转换为 CNAME DNS 设置),然后选择 Convert(转换) 确认。
-
保存 Verification TXT Record(验证 TXT 记录) 中的信息,并在新的权威 DNS 提供商处添加该记录。如果丢失该信息,您也可以在 DNS Records(DNS 记录) ↗ 页面的 Verification TXT Record(验证 TXT 记录) 下找到它。
验证记录示例
example.com的验证记录可能为:Type Name Content TXT cloudflare-verify.example.com966215192-518620144
-
使用 Edit Zone 端点,将
type设为partial以转换 zone 类型。 -
记下 API 响应中
verification_key下返回的值,并在新的权威 DNS 提供商处添加相应的 TXT 记录。验证记录示例
example.com的验证记录可能为:Type Name Content TXT cloudflare-verify.example.com966215192-518620144
在域名 registrar 处更新 nameserver,使其指向新的权威 DNS 提供商。确保移除 Cloudflare nameserver。
在 Cloudflare 中,移除所有非 A、AAAA 或 CNAME 类型的记录,并移除转换后您不希望代理的主机名的任何 A、AAAA 或 CNAME 记录。清理后,Cloudflare 中应仅保留您希望代理的主机名的 A、AAAA 或 CNAME 记录,且这些主机名在新的权威 DNS 提供商处应有指向 {your-hostname}.cdn.cloudflare.net 的 CNAME 记录。