我们通常都会把注册好的域名,托管到cloudflare,一是方便统一管理,二是可以免费使用cloudflare的服务,包括Pages,Works,R2存储桶等等。
托管到 Cloudflare 的域名,其支持解析的二级域名数量取决于你使用的是静态 DNS 记录还是泛域名解析(Wildcard)。
简单来说:静态记录有限制,泛解析理论上无限。
我的网站一个机场推荐网,就托管在cloudflare pages上。除了根域名,并且还解析了二级域名:tg.ygjc.cc,用来部署开源项目:一个telegram教程知识库。
以下是详细的限制说明和方案对比:
1. 静态记录限制(硬性上限)
如果你需要为每个子域名单独设置不同的 IP 或记录(例如 tg.ygjc.cc 指向 IP1,ssr.ygjc.cc 指向 IP2),则受限于 Cloudflare 的DNS 记录总数配额。
| 计划类型 (Plan) | DNS 记录总数上限 (每域名) | 说明 |
|---|---|---|
| Free (免费版) | 200 或 1,000 | 2024年9月1日之后添加的域名限制为 200 条;之前添加的老域名通常为 1,000 条。 |
| Pro (专业版) | 3,500 | 每月 $20 起 |
| Business (商业版) | 3,500 | 每月 $200 起 |
| Enterprise (企业版) | 自定义 | 可联系销售提升至数百万条 |
注意: 该限制是针对“所有 DNS 记录”的总和(包括 A、CNAME、TXT、MX 等)。如果你有一个
tg.ygjc.cc,它可能同时需要 A 记录和 TXT 验证记录,这会占用 2 个配额。
2. 泛域名解析(理论无限)
如果你所有的二级域名都指向同一个服务器 IP(或同一组服务器),你可以使用泛解析(Wildcard DNS)。
-
设置方法: 添加一条 A 记录或 CNAME 记录,主机名(Name)填写
*。 -
数量限制: 无限制。一条
*.example.com记录即可让无数个子域名(如1.example.com,test.example.com)生效,且只占用 1 个 DNS 记录配额。 -
支持情况: Cloudflare 所有套餐(包括免费版)均支持泛解析及代理(小黄云开启)。
3. 重要技术限制与“坑”
在通过 Cloudflare 托管大量子域名时,除了记录数量,还需注意以下关键限制:
A. SSL 证书限制 (HTTPS)
这是最常见的问题。Cloudflare 为免费版提供的通用 SSL 证书(Universal SSL)只覆盖一级子域名。
-
支持:
example.com和*.example.com(即a.example.com可以正常 HTTPS 访问)。 -
不支持:
*.*.example.com(即三级域名a.b.example.com会提示证书错误)。 -
解决方案: 如果你需要解析三级及以上深度的子域名并使用 HTTPS,你需要购买 Cloudflare 的 Advanced Certificate Manager ($10/月) 或自行上传自定义证书。
B. 代理 vs 仅 DNS
-
开启代理 (小黄云): 流量经过 Cloudflare CDN,受 WAF 保护,但需遵守上述 SSL 限制。
-
仅 DNS (灰云): 相当于把 Cloudflare 仅当作 DNS 解析商,直接解析到你服务器 IP。这种情况下,解析层级和 SSL 证书完全由你自己的服务器控制,Cloudflare 不干涉,你可以解析任意深度的子域名(前提是你服务器上的 Nginx/Apache 配置了对应的证书)。
C. Cloudflare for SaaS (自定义主机名)
如果你是指“让客户将他们自己的域名绑定到你的 Cloudflare 上”(例如 shop.client-domain.com -> app.your-service.com),这属于 Cloudflare for SaaS 功能。
-
免费额度: 允许 100 个自定义主机名。
-
超额费用: 超过 100 个后,每个主机名每月收取 $0.10(企业版除外)。
建议
-
场景 A(少量特定子域名): 免费版最多只能设置 200 个(新域名)或 1000 个(老域名)静态记录。
-
场景 B(海量动态子域名): 请使用
*泛解析,数量无限制,但要注意只能覆盖一级子域名的 HTTPS 证书。 -
场景 C(深度子域名): 如果需要
a.b.example.com这种格式,免费版证书无法覆盖,需付费购买高级证书功能或自行管理证书。