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";
}