现有场景是需要用nginx做一个图片请求代理,实现请求aaa.com/a/b/c/1.jpg,服务器拉取bbb.com/a/b/c/1.jpg并缓存到本地/www/nginx_cache,并保留url路径结构。
http{
#设置web缓存区名为cache_two,内存缓存空间大小为200M,自动清除超过1天没有被访问过的缓存数据,硬盘缓存空间大小200g
proxy_cache_path /www/nginx_cache levels=1:2 keys_zone=cache_two:200m inactive=1d max_size=30g;
server {
listen 80;
server_name aaa.com;
location ~ .*\.(gif|jpg|jpeg|png)$ {
## 忽略浏览器的缓存
proxy_ignore_headers Cache-Control;
proxy_ignore_headers Expires;
proxy_cache cache_two;
proxy_cache_valid 200 302 1d;
proxy_cache_valid 404 1h;
proxy_cache_valid any 10m;
proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
}
}
}