为了账号安全,请及时绑定邮箱和手机立即绑定

在Nginx设置浏览器缓存和Nginx缓存

标签:
Nginx

浏览器缓存:静态资源缓存到浏览器,可以在Nginx中设置客户端浏览器静态资源的缓存时间,也可以禁止客户端浏览器使用缓存

浏览器的响应状态码为304,表示使用的是浏览器缓存,当Nginx判断请求的静态资源没有被更新(根据静态资源的更新时间判断),就会让浏览器使用缓存的数据,如果资源被更新了,就会返回最新的资源给浏览器

可以通过expires设置静态资源在浏览器的缓存时间

location /image {

         root /usr/local/nginx/html/static/imooc;

          expires 10s;

}

expires [time]:设置浏览器资源的缓存时间,expires 10s 表示资源在浏览器缓存10s

expires @[time]:设置浏览器资源缓存的到期时间,expires @22h30m 表示资源在当天的22时30分到期,如果已经过了22h30m,就是第二天的22h30m到期

expires -[time]:表示缓存提前到期,用于清除缓存

expires epoch:不在浏览器缓存资源

expires off:Nginx不对浏览器缓存进行设置,使用浏览器的默认缓存设置

expires max:设置最大的缓存时间,资源的到期时间会非常大,可以认为浏览器缓存的资源永不过期


Nginx缓存:上游服务器静态资源缓存到nginx,比如有一台tomcat静态资源服务器,在Nginx中设置了缓存之后,会把从tomcat静态资源服务器请求到的静态资源缓存到Nginx,并且可以设置静态资源的缓存时间

upstream webs {

        server 192.168.48.130:8080;

}

# proxy_cache_path 设置缓存目录

# keys_zone 设置共享内存,dev_cache是共享内存的名字,10m是共享内存的大小

# max_size 设置缓存的最大大小

# inactive 设置文件的过期时间,超过此时间就会被清理

# use_temp_path 设置是否使用临时目录,使用会影响Nginx性能

proxy_cache_path /usr/local/nginx/cache keys_zone=dev_cache:10m max_size=1g inactive=8h use_temp_path=off;


server {

        listen       88;

        server_name  shuguangtj.mukewang.com;


        location / {

            proxy_pass http://webs;

            # 启用缓存,名字跟keys_zone设置的名字一致

            proxy_cache dev_cache;

            # 针对200和304状态码的资源进去缓存,缓存时间为8小时

            proxy_cache_valid 200 304 8h;

        }

}


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消