Nginx系列——内容缓存

Posted 标配的小号

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx系列——内容缓存相关的知识,希望对你有一定的参考价值。

Caching Zones
定义缓存空间
proxy_cache_path /var/nginx/cache    #缓存空间路径
keys_zone=CACHE:60m
levels=1:2
inactive=3h    #缓存时长,3小时内没有被再次请求就会被释放
max_size=20g;
proxy_cache CACHE;

Caching Hash Keys
使用proxy_cache_key模块
proxy_cache_key "$host$request_uri $cookie_user";

Cache Bypass
避开缓存。适用于进行troubleshooting和debug的时候
proxy_cache_bypass $http_cache_bypass;
另外还可以通过设置 proxy_cache off; 进行关闭缓存

Cache Performance
在用户端控制缓存
location ~* .(css|js)$ {
    expires 1y;    #1年后过期
    add_header Cache-Control "public";        #配置http响应头缓存控制
}

Cache Slicing
缓存切片。适用于不会变动的大文件
proxy_cache_path /tmp/mycache keys_zone=mycache:10m;
server {
    ...
    proxy_cache mycache;
    slice 1m;    #以1m为单位进行切片
    proxy_cache_key $host$uri$is_args$args$slice_range;    #切片命名方式?
    proxy_set_header Range $slice_range;
    proxy_http_version 1.1;
    proxy_cache_valid 200 206 1h;
    location / {
    proxy_pass http://origin:80;
    }
}


以上是关于Nginx系列——内容缓存的主要内容,如果未能解决你的问题,请参考以下文章

死磕nginx系列--nginx 限流配置

死磕nginx系列--nginx 限流配置

Nginx+lua+openresty系列 | 第二篇:nginx虚拟主机

Nginx+lua+openresty系列 | 第一篇:openresty介绍

Linux下玩转nginx系列---nginx日志配置文件说明

Linux下玩转nginx系列---nginx日志配置文件说明