Nginx 设置缓存

仅简记设置过程,具体原理等可以转至文末“参考来源”查看。

设置缓存区域

nginx.conf 文件中的 http 段添加

proxy_cache_path 缓存路径 keys_zone=名称:最大允许占用空间;

proxy_cache_path /usr/lcoal/nginx/cache keys_zone=cache_all:100m;
设置强缓存

强缓存:直接在缓存中读取资源而不必向服务器发送请求。

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            proxy_cache               cache_all;
            proxy_cache_valid         200 304 1y;
            proxy_cache_valid         any 1m;
            proxy_cache_lock          on;
            proxy_cache_lock_timeout  5s;
            proxy_cache_use_stale     updating error timeout invalid_header http_500 http_502;
            expires      1y; 
        }

Cache-Control:主要用于控制网页缓存,主要取值为:

  • public:所有内容都将被缓存(客户端和代理服务器都可缓存)
  • private:所有内容只有客户端可以缓存,Cache-Control的默认取值
  • no-cache:客户端缓存内容,但是是否使用缓存则需要经过协商缓存来验证决定
  • no-store:所有内容都不会被缓存,即不使用强制缓存,也不使用协商缓存
  • max-age=xxx (xxx is numeric):缓存内容将在xxx秒后失效
参考来源

Views: 12

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注