文章不易,请关注公众号 毛毛虫的小小蜡笔,多多支持,谢谢。
简介
缓存有很多种,这里讲的是nginx的缓存。
nginx是通过proxy_buffers来实现的。
nginx配置
// 先在http模块中设置好
proxy_connect_timeout 10;
proxy_read_timeout 180;
proxy_send_timeout 5;
proxy_buffering on;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_temp_path /data/nginx/cachetemp;
proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=cache_one:100m inactive=480m max_size=1g;
// 然后再匹配静态资源来缓存
location ~ .(jpg|jepg|png|gif|css|js) {
proxy_pass http://localhost:8082;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache cache_one;
proxy_cache_valid 200 302 24h;
proxy_cache_valid 301 30d;
proxy_cache_valid any 5m;
expires 90d;
// 用于测试缓存否生效
add_header Nginx-Cache 1;
}
如果重启nginx后,发现没有生效,那可以测试下配置文件是否ok。
命令是:nginx -t -c /etc/nginx/nginx.conf
效果
通过响应头我们可以看到,特意设置的字段,证明缓存生效了。
如下截图所示:
再到机器上查看cache目录。也是能看到缓存的文件的。
详情 请查看:毛毛虫的小小蜡笔
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。