mod_expire
mod_expire 为响应添加 "Expires" 和 "Cache-Control" 头
这允许您基于简单的规则/公式控制响应的客户端缓存。
如果响应使用“Expires”和“Cache-Control”头进行缓存,则客户端在达到头中指定的日期之前不会为此发出新的请求。
为 CSS、JavaScript、图片或类似静态内容添加过期头,可以极大地减少您收到的请求数量,从而节省资源。
如果您的内容以特定间隔(例如每15分钟)更改,请使用“modification”作为 <base>
。
expire (动作)
为响应添加一个 "Expires" 头
expire rule;
- 规则
- 用于计算 "Expires" 头值的规则
这里使用的规则/公式与 Apache 的 `mod_expire` 所使用的规则/公式兼容
<base> [plus] (<num> <type>)+
-
<base>
是 “access”、“now” 或 “modification” 之一;其中 “now” 等同于 “access”。 - “
plus
”是可选的,不起任何作用。 -
<num>
是任何正整数。 -
<type>
是 “seconds”、“minutes”、“hours”、“days”、“weeks”、“months” 或 “years” 之一。
<type>
中的末尾“s”是可选的。
如果您使用“modification”作为 <base>
,并且文件不存在或无法访问,`mod_expire` 将不做任何处理,请求处理将继续进行。
expire 动作将覆盖任何现有的 “Expires” 头。
它将 `max-age` 值追加到任何现有的 “Cache-Control” 头。
示例
缓存图片、CSS、TXT和JS文件一周。
setup {
module_load "mod_expire";
}
if req.path =~ "\.(jpe?g|png|gif|txt|css|js)$" {
expire "access plus 1 week";
}