nginx 缓存按目录删除

来源:互联网 发布:mac版芒果tv缓存在哪 编辑:程序博客网 时间:2024/06/06 23:29

思路:

  • 修改nginx缓存模块,让文件缓存的时候存放路径加入域名,URL目录。
  • 修改nginx缓存模块,在每个缓存的节点结构中加入一个ngx_str_t 来存放缓存域名以及URL目录字符串,删除的时候根据这个字符串定位缓存在磁盘中的路径。
  • 修改nginx缓存清除模块,加入批量删除请求的处理,移动要删除的目录到另外一个待删除文件目录(待删除文件目录定期删除文件)。
代码:
http://code.google.com/p/cpphttpd/downloads/list
替换 nginx 1.2.1 以及 ngx_cache_purge-1.5 对应文件。

缓存清除模块配置示例:

location ~ /purge_cache(/.*) {    proxy_cache_purge cache_zone_0 $host$1$is_args$args;}