当您的静态资源未返回响应头Etag或Last-modified时,缓存失败,导致CDN缓存命中率低。您可以针对该资源配置缓存规则,使其在CDN上按照缓存规则进行缓存,来提升缓存命中率。
背景信息
当CDN未配置缓存规则时,如果静态文件未返回响应头Etag和Last-modified,则该静态文件不能缓存在CDN节点上。针对该资源配置缓存规则,操作方法如下。
例如:响应头x-swift为静态文件,在CDN上的缓存时间为0秒,说明CDN不缓存该文件,原因是响应头中没有带Etag和Last-modified。

当源站配置了以下响应头时,即使您配置了缓存规则,CDN也不会对该资源进行缓存,因为这些响应头在CDN缓存规则中的优先级较高。
- 有
s-maxage=0
、max-age=0
、no-cache
、no-store
、private
中的任一种。 - 有
s-maxage
或s-maxage=0
。 - 有
Pragma: no-cache
。
操作步骤
后续步骤
您可以通过如下方法,验证缓存是否命中。
- 在浏览器Chrome上,按F12。
- 选择Network。
- 查看指定URL的响应头信息中的
X-Cache
字段。- 如果显示
HIT
,则说明命中CDN节点上的缓存资源。 - 如果显示
MISS
,则说明未命中CDN节点上的缓存资源,直接回源站获取。
- 如果显示
在文档使用中是否遇到以下问题
更多建议
匿名提交