没有所谓的捷径
一切都是时间最平凡的累积

Nginx配置expires、proxy_cache缓存,配置gzip

本文最后更新于2019年1月17日,已超过249天没有更新,如果文章内容失效,请反馈给本站,谢谢!

Nginx expires,proxy_cache缓存,gzip配置

gzip设置:

gzip on; #开启gzip
gzip_min_length 1k; #gzip最短压缩大小
gzip_buffers 4 64k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_types text/plain application/x-javascript text/css application/javascript text/javascript image/jpeg image/gif image/png application/xml application/json;
gzip_vary on;
gzip_disable "MSIE [1-6].(?!.*SV1)";

proxy_cache:

1.如何配置基本缓存设置

开启简单的缓存配置,只需要两个指令:proxy_cache_path和proxy_cache。proxy_cache_path配置缓存的存放地址和其他的一些常用配置,proxy_cache指令是为了启动缓存。

proxy_cache_path /path/to/cache levels=1:2 keys_zone=mycache:10m max_size=10g inactive=60m use_temp_path=off;
server {
  # ...
  location / {
    proxy_cache mycache;
    proxy_pass http://my_upstream;
  }
}
location ~* ^.+\.(css|js|ico|gif|jpg|jpeg|png|html|htm)$ {
log_not_found off;
proxy_cache mycache;
proxy_cache_valid  200 206 304 301 302 1d;
proxy_cache_key $host$uri$is_args$args;
proxy_set_header        Host            $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
add_header  Nginx-Cache "$upstream_cache_status";
proxy_ignore_headers X-Accel-Expires Expires Cache-Control Set-Cookie;
proxy_pass http://211.149.132.149:8080;
access_log on;
expires 1d;
}

Nginx expires,proxy_cache缓存,gzip配置

相关配置说明如下:

  • /path/to/cache 本地路径,用来设置Nginx缓存资源的存放地址
  • levels 默认所有缓存文件都放在同一个/path/to/cache下,但是会影响缓存的性能,因此通常会在/path/to/cache下面建立子目录用来分别存放不同的文件。假设levels=1:2,Nginx为将要缓存的资源生成的key为f4cd0fbc769e94925ec5540b6a4136d0,那么key的最后一位0,以及倒数第2-3位6d作为两级的子目录,也就是该资源最终会被缓存到/path/to/cache/0/6d目录中
  • key_zone 在共享内存中设置一块存储区域来存放缓存的key和metadata(类似使用次数),这样nginx可以快速判断一个request是否命中或者未命中缓存,1m可以存储8000个key,10m可以存储80000个key
  • max_size 最大cache空间,如果不指定,会使用掉所有disk space,当达到配额后,会删除最少使用的cache文件
  • inactive 未被访问文件在缓存中保留时间,本配置中如果60分钟未被访问则不论状态是否为expired,缓存控制程序会删掉文件。inactive默认是10分钟。需要注意的是,inactive和expired配置项的含义是不同的,expired只是缓存过期,但不会被删除,inactive是删除指定时间内未被访问的缓存文件
  • use_temp_path 如果为off,则nginx会将缓存文件直接写入指定的cache文件中,而不是使用temp_path存储,official建议为off,避免文件在不同文件系统中不必要的拷贝
  • proxy_cache 启用proxy cache,并指定key_zone。另外,如果proxy_cache off表示关闭掉缓存。

更多相关参数设置可参考 http://nginx.org/en/docs/

» 本文链接地址:https://blog.mydns.vip/1314.html
» 如果喜欢可以: 点此订阅本站
赞(0) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@mydns.vip。文章观点不代表本站立场。本站原创内容未经允许不得转载,或转载时需注明出处:豫章小站 » Nginx配置expires、proxy_cache缓存,配置gzip
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

智慧源于勤奋,伟大出自平凡

没有所谓的捷径,一切都是时间最平凡的累积,今天所做的努力都是在为明天积蓄力量

联系我们赞助我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏