nginx缓存原理及配置


1.nginx缓存原理及配置
nginx的http_proxy模块,可以 实现类似于 squid的 缓存功能。
基于nginx静态缓存的解决方案:
1.1 nginx cache的基本配置
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
上述参数说明如下:
父元素 | 名称 | 描述 |
---|---|---|
http | proxy_cache_path | 指定缓存区的根路径 |
levels | 缓存目录级最高三层,每层1-2个字符表示。如1:1:2三层。 | |
keys_zone | 缓存块名称及内存块大小。如cache_item:500m表示声明一个名为cache_item大小为500m。超出大小 后最早的数据将被清除。 | |
max_size | 缓存区硬盘的 最大值。超出闲置数据将被清除 | |
inactive | 最长闲置时间 如10d 如果一个 数据被闲置10天则将被清除 | |
location | proxy_cache | 指定缓存区,对应keys_zone中设定的值 |
proxy_cache_key | 通过参数拼装参数key如:$host$uri$is_args$args 则会以全部领md5值做为key | |
proxy_cache_valid | 对不同的状态码设置缓存有效期 |
1.2 缓存的清除
该功能 可以采用第三方模块ngx_cache_purge实现:
为nginx添加ngx_cache_purge模块
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
清除配置:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
1.3 测试
1、首次访问:
http://localhost8080/demo/images/logo.jpg
2、缓存清理
http://localhost8080/purge/demo/images/logo.jpg
如果您觉得不错,就打赏支持一下吧〜

已有 0 人进行打赏