本文档介绍如何在内容分发网络(CDN)中设置用户浏览器对于请求文件的缓存行为。
当 CDN 响应一个用户请求时,除了将请求的文件发送给用户之外,还可以告知用户浏览器如何对该文件进行缓存。通过在 CDN 中指定浏览器缓存策略,您对特定文件在用户浏览器中的缓存行为进行设置。
浏览器依据源站响应中所指明的缓存行为来设置其缓存策略。在 CDN 向源站请求一个文件时,源站的响应头中会指明该文件的缓存行为。CDN 在缓存该文件时会记录该响应头。
浏览器缓存策略指定了 CDN 如何设置浏览器的缓存行为。CDN 提供了以下浏览器缓存策略:
。该策略的逻辑如下:
Cache-Control
响应头不包含 no-cache
、no-store
或者 private
指令,CDN 在响应用户请求时会包含 Cache-Control: max-age=N
响应头。该响应头告知浏览器需要缓存该文件,其缓存时间 N
就是您在策略中指定的缓存过期时间。遵循源站。该策略的逻辑如下:
不缓存。该策略的逻辑如下:
Cache-Control: no-store
响应头。登录 火山引擎内容分发网络控制台。
在左侧导航栏,点击 域名管理。
在 域名管理 页面,找到需要配置的域名,点击 管理。
在域名页面上,点击 缓存配置 页签。
在页面右上方,点击 编辑配置。
在 浏览器缓存 下方,点击 新增规则。您最多可以添加 50 条缓存规则。
根据 配置说明 进行设置。
配置完成后,在页面右上方,点击 提交编辑。
配置 | 说明 |
---|---|
规则类型 | 表示规则中的过滤条件。该配置有以下选项:
|
规则内容 | 表示规则中的过滤值。多个过滤值之间使用分号(;)分隔,总长度不能超过 1,024 个字符,不能包含以下字符:
CDN 在尝试将规则中的过滤条件与用户请求匹配时,匹配过程是大小写不敏感的。
|
忽略大小写匹配 | 表示 CDN 在尝试使用规则与用户请求匹配时,匹配过程是否是大小写敏感的。该配置默认是关闭,表示大小写敏感。 示例:对于文件后缀规则,您设置 忽略大小写 为关闭。您输入的规则内容是 png;txt 。此时,该规则可以匹配 URL 是 HTTPS://www.EXAMPLE.com/volcano.png 的请求,但是不能匹配 URL 是 https://www.example.com/volcano.PNG 的请求。 |
缓存策略 | 设置一个缓存策略。该配置有以下取值:
关于每个策略的描述,参见 浏览器缓存策略。 |
缓存时间 | 指定一个时间单位并输入缓存的时间。该配置仅当 缓存策略 是 遵循规则 时有效。该配置的说明如下:
如果您指定 缓存时间 为 |
在规则列表中,每条规则都有优先级。优先级为 1 的规则具有最高优先级。当收到一个用户请求时,CDN 按规则的优先级,从高到低尝试将请求与规则匹配。如果请求匹配了一条规则,匹配过程就停止了。您可以拖动规则来调整优先级。
规则中的过滤条件定义了规则的作用范围。如果您创建了多条规则,请留意这些规则的作用范围是否存在交集,并按您的预期设置规则的优先级。例如,您创建了两条规则。规则A 的作用范围是 /dir/
,规则B 的作用范围是 png;jpg
。如果 /dir/
目录下存在 .png 文件,并且您希望规则B 对 .png 文件的请求生效,那么您需要设置规则B 的优先级高于规则A。