nginx 缓存处理

 核心指令

 
 
  1. proxy_cache_path /data/nginx/cache/one levels=1:2 keys_zone=one:10m max_size=10g;
  2. proxy_cache_key "$host$request_uri";
 
配置使用
  1. proxy_cache one;
  2. #设置状态码为200302过期时间为10分钟
  3. proxy_cache_valid 20030210m;
  4. #设置状态码404的过期时间为1分钟
  5. proxy_cache_valid 4041m;
 
详细说明

主要指令

 

  1. proxy_cache_path proxy_cache_key proxy_cache proxy_cache_valid
  2. proxy_cache_path

 

这个是设置缓存的目录,语法如下:

 

  1. proxy_cache_path path [ levels = levels ] keys_zone = name : size [ inactive = time ][ max_size = size ][ loader_files = number ][ loader_sleep = time ][ loader_threshold = time ]

 

可放置的上下文:

  1. http

参数解释:

 

  1. [ levels = levels ]:
  2. 设置缓存目录层数,如levels=1:2,表示创建两层目录缓存,最多创建三层。第一层目录名取proxy_cache_key md5的最后一个字符,第二层目录名取倒数2-3字符,如:
  3. proxy_cache_key md5b7f54b2df7773722d382f4809d65029c,则:
  4. levels=1:2为/data/Nginx/cache/c/29/b7f54b2df7773722d382f4809d65029c
  5. levels=1:2:3为/data/nginx/cache/c/29/650/b7f54b2df7773722d382f4809d65029c
  6. keys_zone = name : size
  7. 定义缓存区域名称及大小,缓存名称用于proxy_cache指令设置缓存放置在哪,如proxy_cache one,则把缓存放在zone名称为one的缓存区,即proxy_cache_path指定的具体位置。
  8. proxy_cache_key
  9. 这个指令是设置以什么参数md5得到缓存的文件名,默认为$scheme$proxy_host$request_uri,即以协议、主机名、请求uri(包含参数)作md5得出缓存的文件名。
  10. proxy_cache_key与下面的清缓存功能(purge cache)有很大关系。可放置在上下文,http server location

 

 

proxy_cache 
    

  1. 反向代理缓存设置指令,语法
  2. proxy_cache zone | off,默认为off
  3. 上下文:http server location
  4. 可以放到指定location,这样匹配此locationurl才被缓存。

 

proxy_cache_valid 

  1. 设置指定状态码的缓存时间,语法
  2. proxy_cache_valid [ code ...] time
 
 header 引起无法缓存解决
  1. proxy_ignore_headers Set-CookieCache-Control;
  2. proxy_hide_header Cache-Control;
  3. proxy_hide_header Set-Cookie;
 

 

 

 

posted on   荣锋亮  阅读(759)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2016-04-01 jQuery.retryAjax
2015-04-01 C# 通用DataTable 拆分小表

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示