cloudflare的作用

Cloudflare 是一个全球网络平台,它不托管你的网站,而是作为你和用户之间的 “ 智能中间层 “(技术上称为反向代理)。它横亘在你的源服务器(Origin Server)和全球访客之间,旨在让你的网站、API 或应用变得 更快、更安全、更可靠。

Cloudflare 就像是你网站的 “ 全球智能前台与安保团队 “。

  • 安保:它会盘查所有访客,把恶意机器人、黑客攻击(如 DDoS)挡在门外。
  • 前台/礼宾:对于常规访客,它会从离访客最近的 “ 储物柜 “(缓存)里直接提供访客要的资料(如图片、CSS 文件),而无需每次都麻烦你(源服务器),从而极大提升访问速度。
特性/概念Cloudflare传统 CDN (如 KeyCDN, BunnyCDN)云服务商 CDN (如 AWS CloudFront)
核心定位一体化的安全与性能平台专注内容分发加速云生态内的内容分发网络
工作模式通常接管整个域名的 DNS (反向代理模式)通过修改特定 URL (cdn.yourdomain.com) 来加速静态资源与云服务(S3, EC2)深度集成,配置灵活但更复杂
安全能力非常强大且易于使用。内置顶级的 DDoS 防护、WAF、Bot 管理通常只有基础的 DDoS 防护,或需额外购买 WAF 服务提供强大的 WAF 和 Shield 等服务,但通常是独立计费且配置复杂
易用性极易上手,5 分钟即可完成基本配置同样比较简单,专注于资源加速配置学习曲线较陡峭,需要对 AWS/GCP/Azure 生态有深入了解
典型场景保护和加速整个网站/应用,包括动态和静态内容只加速网站的静态资源(图片、JS、CSS)深度依赖特定云服务商,用于加速云上的应用和数据

1. 介绍

Cloudflare 的魔法始于一个简单的动作:接管你域名的 DNS 解析。

  1. DNS 接管 (The Handover):你将你域名的 NS (Name Server) 记录指向 Cloudflare 的服务器。这是整个流程的入口。从此,所有对你域名的解析请求都由 Cloudflare 来应答。
  2. Anycast 网络 (The Magic Routing):Cloudflare 使用 Anycast 技术。当用户请求你的网站时,他们不会被指向你服务器的真实 IP,而是被指向 Cloudflare 全球 300+ 个数据中心(称为 PoP - Point of Presence)中离他们网络距离最近的那一个。
  3. 边缘处理 (The Edge Logic):请求到达 Cloudflare 的边缘节点 (PoP) 后,会经过一系列处理:
    • 安全过滤:WAF 检查请求是否包含 SQL 注入、XSS 等攻击特征;DDoS 防护系统会丢弃恶意流量。
    • 缓存服务:检查请求的资源(如图片、JS、CSS)是否已缓存在这个节点。如果命中缓存,则直接从边缘返回给用户,不再访问你的源服务器。这是其 CDN 功能的核心。
    • 规则引擎:执行你配置的各种规则,例如页面重定向、Header 修改、图片优化等。
  4. 连接源站 (The Origin Pull):如果缓存未命中或请求的是动态内容(如用户登录),Cloudflare 会将这个 “ 干净 “ 的请求,通过其优化的内部网络,转发到你的源服务器。重要的是,外界永远无法直接看到你源服务器的真实 IP 地址,它被 Cloudflare 保护起来了。
  5. 响应返回 (The Return Trip):源服务器的响应会先回到 Cloudflare 的边缘节点,节点会根据你的设置决定是否缓存这次的响应内容,然后再将其返回给用户。

1.1 域名 DNS 解析 CloudFlare

阿里云的域名 DNS 可以配置 CloudFlare 的,后面解析都可以在 CloudFlare 上操作了。

这样就可以解决 vercel 的被墙的问题了。

1
waline  cname.vercel-dns.com  走代理模式

测试是否走了 cloudflare

1
2
3
4
5
curl -I https://waline.liuvv.com/   (只获取 HTTP 响应头)

HTTP/2 200
date: Sun, 01 Jun 2025 14:20:55 GMT
server: cloudflare # 注意这里

1.2 SSL/TLS 加密模式

  • Flexible:浏览器 ⇌ Cloudflare (加密) | Cloudflare ⇌ 源站 (不加密)。非常不推荐,只适用于实在无法在源站部署证书的遗留系统。
  • Full:浏览器 ⇌ Cloudflare (加密) | Cloudflare ⇌ 源站 (加密)。但 Cloudflare 不验证你源站的 SSL 证书是否有效。
  • Full (Strict):浏览器 ⇌ Cloudflare (加密) | Cloudflare ⇌ 源站 (加密)。Cloudflare 严格验证你源站的 SSL 证书必须是由可信 CA 签发的有效证书。这是最佳实践。

1.3 使用注意实现

  1. 忘记 “ 点亮橙色云朵 “:在 Cloudflare 的 DNS 设置页面,每条记录后面都有一个云朵图标。灰色云朵表示 “ 仅 DNS 解析 “,流量会直达你的源站,不受 Cloudflare 保护和加速。必须点亮为橙色,流量才会经过 Cloudflare 的网络。新手常常只改了 NS 却忘了检查这个。
  2. Cloudflare 添加的 HTTP Headers:Cloudflare 在将请求转发到你的源站时,会添加一些有用的 Header,如 CF-Connecting-IP (用户的真实 IP)、CF-IPCountry (用户所在国家代码)、CF-Worker (处理该请求的 Worker 名称) 等。你可以在后端应用中直接使用这些信息,而无需自己维护 GeoIP 数据库。

2. 使用

2.1 我的使用

  • 域名 DNS 解析,选择代理模式可以解决 vercel 被墙
  • 缓存 -> Tiered Cache -> 开启
  • 速度 -> 优化 -> 建议的都打开(不要开缩短包含 JavaScript 的页面的绘制时间,影响obsidian动画)

网址测速工具:https://tool.chinaz.com/sitespeed/

2.2 未来

Cloudflare 为数百万个网站提供免费服务。这看起来像是在做慈善,但实际上:免费用户越多 -> 收集的威胁数据越多 -> 安全产品效果越好 -> 吸引更多付费企业客户 -> 赚更多钱建设更好的网络 -> 又能支撑更多免费用户。这个正向循环让它的实力滚雪球般增长。

Cloudflare 的野心远不止做 CDN 和防火墙。它的真正愿景是构建一个可编程的边缘计算网络。Cloudflare Workers 就是这个愿景的核心。它让开发者可以直接在 Cloudflare 全球的边缘节点上运行代码。这意味着你的计算逻辑可以贴近用户执行,而无需返回到遥远的 “ 源站 “。这开启了 Serverless 计算的新范式,比传统的云服务(如 AWS Lambda)延迟更低。