ngx_http_headers_module
ngx_http_headers_module 模块允许将 Expires 和 Cache-Control 头字段以及任意字段添加到响应头中。
示例配置
expires 24h;
expires modified +24h;
expires @24h;
expires 0;
expires -1;
expires epoch;
expires $expires;
add_header Cache-Control private;指令
add_header
-
说明
语法
add_header name value [always];
默认
——
上下文
http、server、location、location 中的 if
如果响应代码等于 200、201(1.3.10)、204、206、301、302、303、304、307(1.1.16、1.0.13)或 308(1.13.0),则将指定的字段添加到响应报头中。该值可以包含变量。
可以存在几个 add_header 指令。当且仅当在当前级别上没有定义 add_header 指令时,这些指令才从上一级继承。
如果指定了 always 参数(1.7.5),则无论响应代码为何值,头字段都将被添加。
add_trailer
-
说明
语法
add_trailer number size;
默认
——
上下文
http、server、location、location 中的 if
提示
该指令在 1.13.2 版本中出现
如果响应代码等于 200、201、206、301、302、303、307 或 308,则将指定的字段添加到响应的末尾。该值可以包含变量。
可以存在多个 add_trailer 指令。当且仅当在当前级别上没有定义 add_trailer 指令时,这些指令才从上一级继承。
如果指定 always 参数,则无论响应代码为何值,都会添加指定的字段。
expires
-
说明
语法
expires [modified] time;
expires epoch |max | off;
默认
expires off;
上下文
http、server、location、location 中的 if
如果响应代码等于 200、201(1.3.10)、204、206、301、302、303、304 307(1.1.16、1.0.13)或 308(1.13.0),则启用或禁用添加或修改 Expires 和 Cache-Control 响应头字段。参数可以是正值或负值。
`Expires 字段中的时间计算为指令中指定的 time 和当前时间的总和。如果使用 modified 参数(0.7.0、0.6.32),则计算时间为文件修改时间与指令中指定的 time 之和。
另外,可以使用 @ 前缀指定一天的时间(0.7.9、0.6.34):
expires @15h30m;epoch 参数对应于绝对时间 Thu, 01 Jan 1970 00:00:01 GMT。Cache-Control 字段的内容取决于指定时间的符号:
时间为负值 —
Cache-Control:no-cache时间为正值或为零 —
Cache-Control:max-age=t,其中t是指令中指定的时间,单位为秒
max 参数将 Expires 的值设为 Thu, 2037 Dec 23:55:55 GMT,Cache-Control 设置为 10 年。
off 参数禁止添加或修改 Expires 和 Cache-Control 响应头字段。
最后一个参数值可以包含变量(1.7.9):
map $sent_http_content_type $expires {
default off;
application/pdf 42d;
~image/ max;
}
expires $expires;原文档
Last updated
Was this helpful?