Cloudflare 不只是一项 CDN 服务。它把域名解析、反向代理、缓存、安全防护、对象存储、内网服务接入和边缘计算放在同一个平台中。很多功能提供免费额度,因此常被称作“赛博菩萨”,但各项服务的免费范围和计费方式并不相同。
这篇文章不展开控制台配置,而是介绍几个最常用的服务,以及它们在一套网站或自托管系统中分别承担什么角色。
1. DNS 与反向代理
1.1 权威 DNS
将域名的 Name Server 指向 Cloudflare 后,可以在 Cloudflare 中管理 A、AAAA、CNAME、MX 和 TXT 等记录。DNS 只负责把域名映射到目标地址,本身不会自动隐藏源站或缓存网站内容。
Cloudflare DNS 也提供 API,适合实现 DDNS。当家庭宽带的公网 IP 发生变化时,服务器可以检测新地址并通过 API 更新 DNS 记录,使外部用户继续使用不变的域名访问服务。
1.2 代理、CDN 与缓存
启用代理的 DNS 记录会先把流量送到 Cloudflare,再由 Cloudflare 请求源站。这个入口可以隐藏源站地址,并让缓存、安全规则和流量分析参与请求处理。
CDN 最适合缓存图片、CSS、JavaScript 等静态资源。动态 HTML 和 API 是否缓存,应根据业务语义使用 Cache Rules 明确配置,不能简单地把所有响应长期缓存。内容更新后,可以按 URL 清除缓存,也可以清除整个站点的缓存。
2. HTTPS 与安全防护
2.1 从浏览器到源站的 HTTPS
Universal SSL 可以为访问者到 Cloudflare 的连接提供证书,但完整的 HTTPS 还包括 Cloudflare 到源站这一段。源站安装有效证书后,通常应使用 Full (strict) 模式,让两段连接都加密并验证源站证书。
Flexible 模式只加密浏览器到 Cloudflare 的连接,Cloudflare 到源站仍使用 HTTP。它可以用于临时兼容,但不应作为长期安全方案。源站可以使用公开 CA 证书,也可以在只接受 Cloudflare 代理流量时使用 Cloudflare Origin CA。
2.2 DDoS、WAF 与 Access
经过 Cloudflare 代理的流量可以使用 DDoS 防护和安全规则。WAF 用于识别或阻止常见 Web 攻击,自定义规则则可以根据路径、来源、请求头等条件限制流量。具体可用规则和托管规则集取决于账户套餐。
Cloudflare Access 解决的是“谁可以访问应用”的问题。它可以在内部管理页面、测试环境或自托管服务前增加身份验证,而不必让每个应用分别实现登录入口。
3. R2 对象存储
R2 是兼容 S3 API 的对象存储,适合保存图片、附件、备份和其他非结构化文件。应用可以通过 S3 SDK、命令行工具或 Workers 访问对象,不必把大量文件放进应用服务器或数据库。
R2 的突出特点是互联网出口流量不收费,同时 Standard 存储提供每月免费用量。存储容量、写操作和读操作分别计量,因此评估成本时不能只看容量;准确额度应以 R2 定价页面 为准。
R2 可以直接为静态资源提供存储,也可以与 Workers 组合:R2 保存对象,Worker 负责鉴权、URL 处理、响应头和业务逻辑。
4. Cloudflare Tunnel 与 Zero Trust
4.1 发布内网 Web 服务
Cloudflare Tunnel 通过内网中的 cloudflared 主动建立到 Cloudflare 的出站连接,因此源站不需要公网 IP,也不必在路由器上开放入站端口。外部请求先到 Cloudflare,再沿隧道转发到家庭或公司网络中的服务。
它适合发布管理后台、博客、API 等 Web 服务,也可以与 Access 组合,在流量进入内网前完成身份验证。因为源站只需主动连接外部网络,这种方式也能降低源站地址直接暴露的风险。
4.2 它不是所有远程访问场景的替代品
Tunnel 的路径会经过 Cloudflare,更适合 HTTP 应用和交互流量。大文件持续传输、低延迟桌面、局域网广播或需要直接访问整个网段的场景,通常更适合 Tailscale、WireGuard 等组网方案。
可以把两者理解为不同入口:Cloudflare Tunnel 面向某个应用发布服务,组网工具则让设备进入远端网络。
5. Workers 边缘计算
Workers 可以在 Cloudflare 网络上运行 JavaScript、TypeScript、Rust/Wasm 等程序。它位于请求入口处,适合实现重定向、鉴权、API 聚合、请求改写和轻量后端,而不需要单独维护一台长期运行的服务器。
5.1 常见用途
- 根据域名、路径或地区改写请求;
- 为 API 增加鉴权、限流或缓存;
- 生成短链接、Webhook 和小型接口;
- 在访问 R2、KV、D1 前实现业务逻辑;
- 为静态网站增加少量服务端功能。
Workers 免费计划有请求量、CPU 时间和子请求数量等限制,更适合轻量服务与原型。正式业务应根据 Workers 限制 和定价评估资源使用。
5.2 与其他存储服务组合
Workers 本身是计算层,不适合把所有状态直接保存在进程中。Cloudflare 提供了几种常见的配套服务:
- R2:保存文件和大对象;
- KV:保存读取频繁、允许最终一致的键值数据;
- D1:提供基于 SQL 的关系数据;
- Durable Objects:处理需要强一致状态或单一协调者的场景。
6. 如何选择
| 需求 | 优先考虑的服务 |
|---|---|
| 管理域名解析或实现 DDNS | Cloudflare DNS |
| 加速和保护公开网站 | Proxy、CDN、Cache Rules、WAF |
| 为源站提供完整 HTTPS | Universal SSL、Origin CA、Full (strict) |
| 保存图片、附件和备份 | R2 |
| 不开放端口发布内网 Web 服务 | Cloudflare Tunnel |
| 为内部应用增加统一身份验证 | Cloudflare Access |
| 在请求入口运行轻量逻辑 | Workers |
这些服务可以组合使用。例如,DNS 负责域名,Tunnel 把请求带入内网,Access 负责身份验证;或者由 Workers 处理 API,再把文件存入 R2。
7. 小结
Cloudflare 的价值不在于某一个孤立功能,而在于它提供了一组可以组合的网络与应用基础设施。对于个人网站和自托管服务,最常见的起点是 DNS、代理与 HTTPS;需要文件存储时加入 R2,需要发布内网应用时使用 Tunnel,需要在边缘执行逻辑时再引入 Workers。
免费额度适合学习和小规模使用,但并不代表所有功能都免费。上线前应分别检查相应服务的限制、计费方式和安全边界。