nginx缓存

缓存策略

  1. 对于不经常更新的静态文件,建议缓存时间设置为1个月以上
  2. 对于经常需要更新并且更新频繁的静态文件,可以将缓存时间设置短一些
  3. 对于动态文件,建议设置缓存时间为0

常规缓存设置

proxy_cache search-cache;
proxy_cache_revalidate on;
proxy_cache_valid 10m;
proxy_cache_use_stale error timeout http_500 http_502 http_503 http_504;
proxy_cache_lock on;
add_header X-Cache-Status $upstream_cache_status;

忽略后端设置cache-contorl

proxy_ignore_headers Cache-Control Set-Cookie;
proxy_cache_valid any 30m;

缓存post请求

proxy_cache_methods GET HEAD POST;

缓存动态内容

设置Cache-Control

bypass cache

#当cookie或者url_args中设置了此项值则不使用缓存
proxy_cache_bypass $cookie_nocache $arg_nocache;

default cache key

proxy_cache_key $scheme$proxy_host$uri$is_args$args;

使用Cookie作为缓存的一部分

proxy_cache_key $cookie_jessionid$scheme$proxy_host$uri$is_args$args;
配置示例
proxy_cache search-cache;
proxy_cache_revalidate on;
proxy_cache_key $scheme$proxy_host$uri$is_args$args$cookie_jsessionid;
proxy_cache_valid 10m;
proxy_ignore_headers Cache-Control Set-Cookie;
proxy_cache_use_stale error timeout http_500 http_502 http_503 http_504;
proxy_cache_lock on;
add_header X-Cache-Status $upstream_cache_status;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • nginx简介 众所周知nginx近些年在服务器领域占据着很重要的作用,目前我主要接触的关于nginx是作为代理服...
    ytlm阅读 2,015评论 0 2
  • 在浏览器和应用服务器之间,存在多种“潜在”缓存,如: 客户端浏览器缓存 中间缓存 内容分发网络(CDN) 服务器上...
    kekefund阅读 10,712评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 最近总听“得到”,发现里面的专栏作家互推打广告做得太多,弄得我有点烦,不过烦的同时也发现了一个有意思的作者和一本有...
    Miss宛笑阅读 403评论 0 1
  • 亲密无间是一家 , 大伙围着猪妈妈。 遥远故事细听讲, 咋样竞入十二强。 2017年4月22日铜川漆水河畔
    许永杰阅读 281评论 0 0