记录主机体验,分享建站经验RSS 订阅 ↗

CDN 加速怎么配置:DNS 代理、缓存 TTL 与回源排查

更新于 2026-10-23

CDN 加速的关键不是把域名“接入”按钮点亮,而是让合适的请求走边缘节点、让可共享的资源缓存、让不能共享的数据始终安全回源。下面以 Cloudflare 的常见网站代理流程举例,其他 CDN 的产品名与缓存默认值可能不同。

DNS 代理和 DNS only,有什么差别?

使用 CDN 代理时,访客请求域名会先到 CDN 的边缘网络,再由边缘缓存或回源获取内容。DNS only 只返回源站地址,HTTP/HTTPS 流量不会经过该 CDN 代理。Cloudflare 官方说明可代理用于解析地址的 A、AAAA、CNAME 记录,而 MX、TXT 等记录并不代理;切换前要核对业务是否要求直连源站,例如邮件服务与一些第三方验证。

CDN 请求路径示意:浏览器到 CDN 边缘节点,命中缓存直接返回,未命中再安全回源

先为资源分类,再制定缓存规则

内容类型 建议起点 主要风险
带版本号的 CSS、JS、图片 可按发布流程设置较长缓存并使用新文件名更新 修改文件但 URL 不变可能导致旧资源残留
公开文章 HTML 根据更新频率审慎考虑边缘缓存和清理流程 登录态或个性化信息不可与公开页面混用
登录页、购物车、账户资料 应避免被共享缓存保存,检查 Cache-Control: private 或 no-store 等策略 配置错误会造成隐私数据泄露
API 逐接口分析授权与请求方法,默认不要盲目全站缓存 返回数据过期或越权访问

max-age、s-maxage、no-cache、no-store 含义不同,且供应商的页面规则可能覆盖源站响应头。no-cache 允许存储但重用前需验证;no-store 才是不应存储。Cloudflare 的 Edge Cache TTL 与 Browser Cache TTL 也不是同一件事,清除边缘缓存不能删除用户浏览器里已有的缓存。

接入前后核对的四件事

  1. 确认域名已生效且期望的 A/AAAA/CNAME 记录处于代理模式,留意 DNS 传播及可能的 IPv6 地址。
  2. 确认 CDN 到源站的 HTTPS 验证、证书有效性和源站防火墙放行规则,不应为了“修好 HTTPS”而长期关闭证书校验。
  3. 在浏览器 Network 面板和响应头检查缓存状态,首次 MISS 后未必一定 HIT,要结合资源是否符合规则、是否携带 Cookie 与请求头判断。
  4. 比较不同地点的 TTFB 与静态资源加载时间;若源站应用慢,单纯接入 CDN 不能消除所有回源等待。

常见故障与回退

DNS 正常但没有缓存:检查代理状态、资源类型与 Cache-Control;更新后仍显示旧内容:检查边缘/浏览器 TTL 与版本化文件名;重定向循环或证书报错:优先核对 CDN 到源站的 TLS 模式、Nginx 代理识别头与站点强制 HTTPS 规则。

生产变更前记录原有 DNS 与缓存规则,分批启用并保留回退路径。性能基线可结合本站 网站加载速度优化指南,反向代理细节可参考 Nginx 配置实例。关键原理可查 DNS 代理文档、缓存控制与 缓存时间说明。