用了CDN网站还是慢?问题多半出在缓存策略上。CDN不是”把文件放上去就自动快”——不同的文件类型、不同的业务场景需要不同的缓存规则。本文讲清楚CDN缓存的核心策略和配置方法。
一、缓存类型
| 文件类型 | 建议缓存时间 | 原因 |
|---|---|---|
| 图片/CSS/JS/字体 | 7-30天 | 静态资源不常变,长缓存最有效 |
| HTML页面 | 1小时-1天 | 内容可能更新,需要平衡 |
| API响应 | 0(不缓存) | 动态数据缓存可能导致数据错误 |
| 用户头像/上传文件 | 1-7天 | 偶尔更新,中等缓存 |
二、缓存控制方式
两种标准方式告诉CDN怎么缓存:
- 源站HTTP头:服务器返回
Cache-Control: max-age=86400,CDN自动按这个时间缓存。这是最推荐的方式,一次配置源站,所有CDN都生效; - CDN控制台规则:在CDN后台按文件路径或后缀设置缓存时间。优点是灵活调整不需要改源站代码。
三、缓存命中率提升
- 用版本号管理静态文件:
style.css?v=1.2.3确保更新后用户拿到新版本; - 忽略查询参数:CDN设置忽略URL中的 ? 参数,避免
?from=wechat导致缓存未命中; - 预热热门文件:网站大改版或活动前,手动预热关键文件到各CDN节点。
四、缓存刷新
文件更新后需要让CDN重新回源拉取:目录刷新(批量刷新一个目录下所有文件)和URL刷新(精确刷新单个文件)。目录刷新有冷却限制(通常5-10分钟一次),高频更新建议用URL刷新。
总结
CDN缓存策略的黄金法则是”静态长缓存+动态不缓存+版本号管理”。配置对了,源站带宽能省80%以上;配错了,CDN反而拖慢访问。更多CDN和优化工具可看极跃IP资源导航。






