用户请求时分为两个部分的缓存:
Expires [time]
控制浏览器缓存静态资源的过期时间,过期或者更新文件后会重新请求,否则读取本地静态资源缓存。
location / {
....
expires 10s;
}
Expires @[times]
在具体的时间过期
expires @22h30m; # 在今晚22:30分时过期
Expires -[times]
代表缓存提前过期了,即之前的时间已经过期
expires -1h;
Expires epoch [times]
不设置cache的意思
Expires off
关闭nginx的expires,但是浏览器会有默认的设置
Expires max
设置永不过期
expires max;
proxy_cahce_path
设置缓存保存的目录。
存储上游服务器的缓存
# keys_zone 设置共享内存以及占用的空间大小
# max_size 设置缓存的大小
# inactive 设置缓存清理超时时间
# use_temp_path 是否使用临时目录,会影响缓存的性能;
proxy_cache_path /usr/local/nginx/upstream_chace keys_zone = mycache:5m max_size = 1g inactive=1m use_temp_path=off;
server{
listen 80;
server_name www.example.com;
# 开启使用缓存
proxy_cache mycache;
# 针对200和304状态码的缓存过期时间
proxy_cache_valid 200 304 8h;
}