You need to enable JavaScript to run this app.
导航

浏览器缓存

最近更新时间2024.04.02 15:53:52

首次发布时间2023.03.08 17:35:19

本文档介绍如何在内容分发网络中设置用户浏览器对于请求文件的缓存行为。

浏览器缓存概述

当内容分发网络响应一个用户请求时,除了将请求的文件发送给用户之外,还可以告知用户浏览器如何对该文件进行缓存。通过在内容分发网络中指定浏览器缓存策略,您对特定文件在用户浏览器中的缓存行为进行设置。

浏览器依据源站响应中所指明的缓存行为来设置其缓存策略。在内容分发网络向源站请求一个文件时,源站的响应头中会指明该文件的缓存行为。内容分发网络在缓存该文件时会记录该响应头。

浏览器缓存策略

浏览器缓存策略指定了内容分发网络如何设置浏览器的缓存行为。内容分发网络提供了以下浏览器缓存策略:

  • 缓存。该策略的逻辑如下:

    • 如果请求文件的源站响应中 Cache-Control 响应头不包含 no-cacheno-store 或者 private 指令,内容分发网络在响应用户请求时会包含 Cache-Control: max-age=N 响应头。该响应头告知浏览器需要缓存该文件,其缓存时间 N 就是您在策略中指定的缓存过期时间。
  • 遵循源站。该策略的逻辑如下:

    • 在响应用户请求时,内容分发网络会包含请求文件的与缓存相关的源站响应头。
  • 不缓存。该策略的逻辑如下:

    • 内容分发网络告知浏览器不要对请求的文件进行缓存。在响应用户请求时,内容分发网络会包含 Cache-Control: no-store 响应头。

操作步骤

  1. 登录 火山引擎内容分发网络控制台

  2. 在左侧导航栏,点击 域名管理

  3. 域名管理 页面,找到需要配置的域名,点击 管理。 页面上方的筛选条件和搜索框可以帮助您快速找到要配置的域名。

  4. 在域名页面上,点击 缓存配置 页签。

  5. 在页面右上方,点击 编辑配置

  6. 浏览器缓存 下方,点击 添加缓存规则。 您最多可以添加 50 条缓存规则。

  7. 根据配置说明进行设置。

  8. 配置完成后,在页面右上方,点击 提交编辑

配置说明

配置说明
优先级表示规则的优先级。如果有多条规则,则按优先级来执行规则。如果有一条规则匹配了用户请求,剩余规则停止匹配。您可以通过拖拽调整规则的优先级。

规则类型

表示规则的匹配条件。该配置有以下选项:

  • 文件后缀:表示规则用于匹配指定扩展名的文件的请求。

  • 目录:表示规则用于匹配指定目录下文件的请求。

  • 文件全路径:表示规则用于匹配指定文件路径的请求。

规则

表示规则的内容,长度不能超过 1,024 个字符,不能包含以下字符:

  • 连续斜杠(//)、空格、美元符号($)、问号(?)、Delete(ASCII code 127)。

同时,

  • 如果规则类型是 文件后缀,规则内容必须是一个或者多个以分号(;)分隔的文件后缀。文件后缀无需以句点(.)开头。例如:png;txt

  • 如果规则类型是 目录,规则内容必须是一个或者多个以分号(;)分隔的目录路径。目录路径必须以斜杠(/)开头和结尾。例如:/chs/foods/;/us/birds/

  • 如果规则类型是 文件全路径,规则内容必须是一个或者多个以分号(;)分隔的文件路径。文件路径必须以斜杠(/)开头,可以包含星号(*)用来表示一个或者多个字符。例如:/chs/foods/local*sets;/us/birds/chickadee

缓存策略

设置一个缓存策略。该配置有以下取值:

  • 缓存

  • 遵循源站

  • 不缓存

关于每个策略的描述,参见浏览器缓存策略

忽略大小写设置内容分发网络在使用 规则 匹配用户请求的文件时是否区分大小写。请求 URL 的其余部分不受该配置影响。默认设置是关闭,表示区分大小写。

示例:对于文件后缀规则,您设置 忽略大小写 为关闭。您输入的规则内容是 png;txt。此时,该规则可以匹配 HTTPS://www.EXAMPLE.com/image.png,但是不能匹配 https://www.example.com/image.PNG

缓存时间

指定一个时间单位并输入缓存的时间。该配置仅当 缓存策略缓存 的时候有效。该配置的说明如下:

  • 如果您指定的时间单位是 ,您可以输入的值的范围是 0 - 31536000。31,536,000 秒就是 1 年。

  • 如果您指定的时间单位是 ,您可以输入的值的范围是 0 - 5256000。5,256,000 分就是 1 年。

  • 如果您指定的时间单位是 小时,您可以输入的值的范围是 0 - 8760。8,760 小时就是 1 年。

  • 如果您指定的时间单位是 ,您可以输入的值的范围是 0 - 365。

如果您指定 缓存时间0,则表示告知浏览器不要缓存文件。