前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx学习之缓存配置

Nginx学习之缓存配置

作者头像
小柒2012
发布2018-04-13 14:09:36
8980
发布2018-04-13 14:09:36
举报
文章被收录于专栏:IT笔记

项目采用的是Nginx+Tomcat,Nginx处理静态请求并缓存,Tomcat处理动态请求。

缓存配置proxy_cache.conf:

代码语言:javascript
复制
#设置Web缓存区名称为cache,内存缓存空间大小为200MB
#1天没有被访问的内容自动清除,硬盘缓存空间大小为10GB
#levels=1:2 表示缓存目录的第一级目录是1个字符,第二级目录是2个字符
#proxy_cache_key 设置缓存的key,以域名、URI、参数组合成Web缓存的Key值,Nginx根据Key值哈希,存储缓存内容到二级缓存目录内
proxy_cache_path /home/cache levels=1:2 keys_zone=cache:200m inactive=1d  max_size=10g;
proxy_cache_valid  200 304 301 302 8h;
proxy_cache_valid  404 1m;
proxy_cache_key    $host$uri$is_args$args;

项目reprot.conf:

代码语言:javascript
复制
#报告
server {
        listen       80;
        server_name  report.52itstyle.com;
        access_log     /usr/local/nginx/logs/report.52itstyle.com.access.log access;
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|css|js|ico)?$ {
            expires      1d;#缓存时间
            proxy_cache cache;#设置资源缓存的zon
            add_header  Nginx-Cache "$upstream_cache_status";#显示缓存的状态
            proxy_pass      http://report;
        }
        location / {
              proxy_pass      http://report;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

}
upstream report {
         fair;
         server  172.16.1.120:8882 weight=1  max_fails=2 fail_timeout=30s;
         server  172.16.1.120:8881 weight=1  max_fails=2 fail_timeout=30s;
}

重启Nginx,清空浏览器缓存,刷新页面,F12 查看:

代码语言:javascript
复制
Cache-Control:max-age=86400
Connection:keep-alive
Content-Encoding:gzip
Content-Type:application/javascript
Date:Fri, 05 May 2017 08:21:22 GMT
Expires:Sat, 06 May 2017 08:21:22 GMT
Last-Modified:Thu, 27 Apr 2017 01:27:36 GMT
Nginx-Cache:HIT
Server:Tengine/2.1.1
Transfer-Encoding:chunked

$upstream_cache_status包含以下几种状态:

代码语言:javascript
复制
·MISS 未命中,请求被传送到后端
·HIT 缓存命中
·EXPIRED 缓存已经过期请求被传送到后端
·UPDATING 正在更新缓存,将使用旧的应答
·STALE 后端将得到过期的应答

查看Nginx进程,会有一个cache进程

123.png
123.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档