Nginx服务系列——缓存

proxy_cache_path path[levels=1:2] [use_temp_path=on|off] keys_zone=name:size [inactive=time] [max_size=size]......(http)

proxy_cache_path /opt/app/cache levels=1:2 keys_zone=jim_cache:10m max_size=10g(目录最大存储大小) inactive=60m(一小时内没有访问过缓存文件就被清理) use_temp_path=off;

proxy_cache zone | off;(默认off)(httpserverlcation)

proxy_cache_valid [code ...] time;(httpserverlocation)缓存周期配置

proxy_cache_valid 200 12h;#表示200的12h过期
proxy_cache_valid any 10m;#表示其他请求都是10分钟过期

proxy_cache_key 方式表示已什么方式为key来缓存

proxy_cache_key $host$url$is_args$args;

proxy_no_cache string不用缓存的url

proxy_no_cache string;(http\server\location)

图中自定义了cookie_nocache变量,实现对url中包含url3/login等的网页不缓存。

proxy_next_upstream filed filed;发生错误和超时就请求下一台服务器

proxy_next_upstream error timeout

slice分片请求

slice size(http\server\location)默认size=0;

一张配置图分析:

  1. root配置在server作用域下,所有location统一使用,使location无需再配置
  2. 图上有两个location,实现了动静分离,动态文件使用代理/负载均衡实现,静态文件则通过压缩及设置过期时间来进行缓存。

你可能感兴趣的:(nginx)