配置缓存过期时间
所有文档
menu

内容分发网络 CDN

配置缓存过期时间

产品详情立即购买

概述

缓存配置是指CDN节点在缓存资源时所遵循的一套过期淘汰规则。配置缓存过期时间即配置缓存文件在cache中保存的时长。CDN缓存的资源都有一定的过期时间;在资源未过期时,接受到请求时由节点响应;在资源过期时,节点会请求源站重新缓存,并将资源发给用户。

  • 在用户接入域名时,控制台会自动为其配置默认缓存,用户可编辑权重值来调整缓存规则生效的优先级。缓存内容包括:

    • 全局静态文件默认缓存30天,权重为2。
    • 动态文件如.php、.jsp、.asp等默认缓存时间为0,权重为3。
    • 源站HTTP Header中缓存控制权重为1。
  • 过期时间可以通过控制台设置,也可以通过HTTP Header中的缓存控制头(Expires或Cache-control)设置。

    • 两者都未设置时,CDN不缓存数据。
    • 两者都设置时,根据配置的缓存策略权重来判断优先级。

对于HTTP Header中设置缓存控制头Expires与Cache-Control的区别:

  • Cache-Control:用于控制http缓存。如果设置为“no-cache”,则意味着指示请求或响应消息不能缓存(HTTP/1.0用Pragma的no-cache替换)。
  • Expires:表示失效时间,也就是文件在本地客户端的缓存时间,等同max-age的效果,Expires的值应该使用GMT格式的时间:如 Thu, 01 Dec 1994 16:00:00 GMT。

若Expires与Cache-Control同时存在,Expires会被Cache-Control的max-age覆盖。

注意事项

  • 未通过验证或正在验证的域名不可配置。
  • 用户最多可设置15个配置项的过期时间。
  • 静态内容如jpg、png、mp3 等内容的过期时间建议设置一个月。
  • 不推荐两条缓存策略配置相同的权重,如果权重相同,会随机选择其中一条策略生效。
  • CDN支持用户自己配置过期时间,CDN控制台的自定义缓存设置优先级默认高于源站HTTP Header的缓存设置;若用户需要源站缓存配置的优先级高于控制台设置,可通过在配置中选择遵循源站缓存来实现。
  • 缓存配置的两个默认特点:

    • 对用户任意请求,如果当前资源未过期,则节点响应,如果当前资源过期,则请求源站缓存并响应请求。
    • 如果不配置任何缓存规则,则根据源站的响应头,来设置缓存资源的过期时间。

操作步骤

  1. 登录CDN管理控制台,进入“内容分发网络CDN”页面。
  2. 在左侧导航栏,点击域名管理
  3. 进入域名管理页面,点击目标域名操作列的管理
  4. 进入“CDN域名详情”页,在页面上方导航栏选择缓存配置页签。
  5. 缓存过期时间配置模块中点击添加配置
  6. 点击添加配置,在弹出的“添加缓存设置页面”配置以下参数。
参数说明
类型支持文件后缀名、目录、状态码和精确文件的配置。
  • 目录缓存配置:以目录为判断依据的缓存配置,例如/test目录缓存配置100秒,则用户域名/test路径下的所有资源文件在节点的过期时间为100秒。
  • 文件后缀名缓存配置:以文件后缀名为判断依据的缓存配置,例如设置图片文件jpg缓存配置100秒,则jpg资源文件在节点的过期时间为100秒。
  • 状态码缓存配置:以回源响应的状态码为判断依据的缓存配置,例如404异常状态码缓存配置3600秒,则源站的404响应在节点的过期时间为3600秒。
  • 文件名缓存配置:以“/”开头的准确文件名为判断依据的缓存配置,如/test.jpg缓存配置100秒,则该文件在节点的过期时间为100秒。
缓存项指明具体哪些资源适用于本条缓存配置。
过期时间资源在节点上过期的时间。状态码缓存过期时间为0~120s,配置的过期时间应在此范围内。过期时间设置为0,即为不缓存该内容。
遵循源站缓存遵循源站的缓存规则会根据源站返回的响应头Cache-Control和Expires来设置节点的缓存过期时间。
权重权重代表缓存规则的优先级,取值范围为0~100,权重大者优先级高,对应规则优先生效,权重相同者随机生效。

image.png

  1. 点击确定,完成一个配置项的缓存过期时间添加。
  2. 添加完成后,可以在缓存过期时间配置页面查看,在配置项操作列可以编辑/删除该配置项的过期时间。

image.png

上一篇
域名详情
下一篇
配置忽略参数