2019-05-24 nginx的缓存基本用法

2019-05-24  本文已影响0人  张大志的博客
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
proxy_cache_path /etc/nginx/conf.d/cachepath levels=1:2:2 keys_zone=two:10m loader_threshold=300 loader_files=200 max_size=200m inactive=5m;
upstream cacheups {
      server 127.0.0.1:8080;
}
server {
     server_name cache.zhangdazhi.com;
     location / {
         proxy_pass http://cacheups;
         proxy_cache two;
         proxy_cache_valid 200 10m;  #状态码为200缓存10分钟
         add_header X-cache-Status $upstream_cache_status;  #添加响应头部,用于告诉客户端是否命中缓存
}
}
定义上游服务
server {
       listen 8080;
       location / {
         #   return 200 "server2\n"; 
               root /data/nginx/html;
               add_header Cache-Control 'max-age=3,stale-while-revalidate=3';  #添加此头部max-age=<seconds>
     设置缓存存储的最大周期,超过这个时间缓存被认为过期(单位秒)。与Expires相反,时间是相对于请求的时间。max-age会覆盖掉Expires。stale-while-revalidate=<seconds> 
     表明客户端愿意接受陈旧的响应,同时在后台异步检查新的响应。秒值指示客户愿意接受陈旧响应的时间长度。
            #   add_header Vary *;  #上游服务添加此头部,则不缓存,即使反向代理定义了缓存
            #   add_header X-Accel-Expires 3; #反向代理定义的缓存时间为10分钟,在上游服务中添加响应头部定义缓存时间为3秒,则过3秒就会变为过期的缓存
}
}
上一篇下一篇

猜你喜欢

热点阅读