本文为您介绍通过配置忽略参数功能,来解决URL的传递参数为变量导致CDN缓存命中率低的问题。
问题描述
在使用阿里云CDN时,CDN的缓存命中率很低。在浏览器中,按F12键,在访问页面中,单击Network,然后在Name选项中,单击Headers,在Response Headers模块中,确认URL响应头信息中X-Cache
为MISS,则表示没有命中CDN缓存。但是在页面中,对应文件的URL响应头信息的X-Cache
为HIT。
说明
本案例以Chrome浏览器为例。
问题原因
没有开启CDN的忽略参数功能。
解决方案
以下是关于CDN缓存命中率的说明以及CDN命中率低的相关解决方案。
CDN命中率说明
CDN命中表示可以直接通过缓存获取到需要的数据。
CDN没有命中表示无法直接通过缓存获取需要的数据,需要再次查询数据库或者执行其它的操作。一般情况下,可能是因为缓存中根本不存在所需数据,或者缓存已经过期。
开启忽略参数功能
可能由于没有开启CDN的忽略参数功能,导致URL中传递参数为变量。以如下URL为例,其对应的文件为ArrowScene.ccbi,但是每一次打开该文件时,URL中
?_t=
字段后的数字为变量,所以CDN并不会缓存该数据。http://example.com/movie/XSHD/res/ccb/ArrowScene.ccbi?_t=xxxxxxxxxxxxxx
登录CDN控制台,开启忽略参数功能。关于如何开启忽略参数功能,请参考忽略参数。
说明开启该功能后,
?_t=
字段后的参数将被忽略。
文档内容是否对您有帮助?