CDN规则用于指定哪些内容需缓存及缓存时长和策略,以加速内容分发和提高访问速度。
什么是CDN缓存规则?
定义:CDN缓存规则是指配置CDN服务时设置的一系列规则,用于指定哪些内容需要被缓存以及缓存的时长和更新策略。
如何配置CDN缓存规则?
登录CDN控制台
登录到你的CDN服务提供商的控制台。
找到缓存规则设置选项
在控制台中,找到与缓存规则相关的设置选项,这通常位于“缓存配置”或类似的标签下。
配置缓存规则
根据需求配置缓存规则,你可以按目录或文件后缀名来指定资源范围,并设置相应的缓存过期时间。
CDN对HTTP请求的支持情况
请求方式 | 描述 | 是否支持 |
GET | 从指定的资源请求数据 | 支持 |
POST | 向指定的资源提交要被处理的数据 | 支持 |
HEAD | 与GET相同,但只返回HTTP报头,不返回文档主体 | 支持 |
PUT | 上传指定的URI | 支持 |
DELETE | 删除指定资源 | 支持 |
OPTIONS | 返回服务器支持的HTTP方法 | 支持 |
CONNECT | 把请求连接转换到透明的TCP/IP通道 | 不支持 |
注意:CDN处理HEAD请求时会将HEAD请求转换成GET请求回源,因此源站日志中记录的是GET请求。
CDN缓存规则优先级
源站配置:源站针对于该资源配置的缓存设置具有最高优先级。
CDN控制台配置:如果源站没有配置缓存规则,则按照CDN控制台的配置进行缓存。
权重设置:当有多条缓存规则时,可以通过权重来控制规则执行优先级,权重越大优先级越高。
CDN缓存过期时间和更新策略
缓存过期时间:指源站资源在CDN节点缓存的时长,达到预设时间,资源将会被CDN节点标记为失效资源。
更新策略:如果客户端向CDN节点请求的资源已经失效,CDN会回源站获取最新资源并缓存到CDN节点。
HTTP协议缓存控制机制说明
头部名称 | 协议版本 | 作用 | 示例值 | 类型 |
Pragma | HTTP/1.0 | 用于表示内容是否为不缓存,通常取值no-cache,表示文件不缓存,常被用来兼容只支持HTTP1.0协议的Server | Pragma:no-cache | 请求/响应 |
Expires | HTTP/1.0 | Expires响应头包含日期/时间,表示在此时间之后,缓存内容将会过期,如果使用了无效的日期,比如0,则代表该资源已经过期 | Expires: Wed, 25 Nov 2022 07:28:00 GMT | 响应 |
Cache-Control | HTTP/1.1 | Cache-Control响应头可以设置不同的指令来实现灵活的缓存控制,是目前主流客户端(如浏览器等)用于控制缓存的重要头部 | Cache-Control:no-cache Cache-Control:no-store Cache-Control:max-age=0 | 请求/响应 |
CDN缓存规则是确保网站快速加载的关键配置之一,通过合理设置这些规则,可以优化用户体验并减少服务器负载,建议根据实际业务需求调整缓存过期时间和更新策略。
小伙伴们,上文介绍了“cdn规则”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。