使用expires
参数
server {
expires -1;
}
输出Response Headers:
Cache-Control:no-cache
当文件没有变更时会返回304, 有变更时会是200, 如果强制命中200可以再添加: if_modified_since off;
忽略 Request Headers 里的 If-Modified-Since
字段
server {
expires 1d;
}
1d为1天, 单位如下:
ms milliseconds
s seconds
m minutes
h hours
d days
w weeks
M months, 30 days
y years, 365 days
如果希望最大缓存可以:
server {
expires max;
}
输出Response Headers:
Cache-Control:max-age=315360000
server {
# 设置为1月
set $expires_time 1M;
# 针对后台不缓存
if ($request_uri ~* ^/admin(\/.*)?$) {
set $expires_time -1;
}
# 针对静态文件缓存最大
if ($request_uri ~* ^/static(\/.*)?$) {
set $expires_time max;
}
# 设置吧
expires $expires_time;
}