当您的域名在 zone apex(example.com,即记录 Name 设置为 @)使用 CNAME 记录时,所有套餐默认发生 CNAME 扁平化。
对于付费套餐上的 zone,您可以选择扁平化所有 CNAME 记录。此选项对仅 DNS(未代理) CNAME 记录很有用。代理记录默认被扁平化,因为它们返回 Cloudflare anycast IP。
-
在 Cloudflare 仪表板中,转到 DNS Settings(DNS 设置) 页面。
Go to Settings ↗ -
开启 CNAME flattening for all CNAME records(对所有 CNAME 记录进行 CNAME 扁平化) 选项。
向 Update DNS Settings 端点发出 PATCH 请求,并在请求正文中将 flatten_all_cnames 设置为 true。
付费 zone 还可以选择扁平化特定的 CNAME 记录。
如果使用此选项,特殊标签 cf-flatten-cname 将添加到 zone 文件中相应的扁平化 CNAME 记录,允许您导出和导入记录而不丢失此配置。
- 在 DNS Settings(DNS 设置) ↗ 页面上,确保 CNAME flattening for all CNAME records(对所有 CNAME 记录进行 CNAME 扁平化) 已关闭。
- 转到 DNS Records(DNS 记录) ↗ 页面,找到要扁平化的 CNAME 记录。
- 选择 Edit(编辑) 并开启 Flatten(扁平化) 选项。
- 选择 Save(保存) 确认。
使用可用的 API 端点,在请求正文中为每个 CNAME 记录指定以下内容:
"settings": {
"flatten_cname": true
}