2025年expires缓存技术

expires缓存技术1 什么是 expires expires 是给一个资源设定一个过期时间 也就是说无需去服务端验证 直接通过浏览器自身确认是否过期即可 所以不会产生额外的流量 此种方法非常适合不经常变动的资源 如果文件变动较频繁 不要使用 expires 来缓存 expires 起到控制页面缓存的作用

大家好,我是讯享网,很高兴认识大家。

1.什么是expires?

expires是给一个资源设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。此种方法非常适合不经常变动的资源。如果文件变动较频繁,不要使用expires来缓存。

expires起到控制页面缓存的作用,合理的配置expires可以减少很多服务器的请求。


2.nginx配置expires

查阅官方技术文档http://nginx.org/en/docs/http/ngx_http_core_module.html,搜索expires关键字。

语法: expires [time|epoch|max|off]

默认值: expires off

作用域: http, server, location

使用本指令可以控制HTTP应答中的"Expires"和"Cache-Control"的头标,起到控制页面缓存的作用。

*可以在time值中使用正数或负数。"Expires"头标的值将通过当前系统时间加上您设定的 time 值来获得。

 所以,在这之前要先配置nginx所在的时区,date_default_timezone_set('PRC');[其中PRC为"中华人民共和国"]。

*epoch 指定"Expires"的值为 -> 1 January, 1970, 00:00:01 GMT。

*max 指定"Expires"的值为 -> 31 December 2037 23:59:59 GMT,"Cache-Control"的值为10年。

*-1 指定"Expires"的值为服务器当前时间-1s,即永远过期。

*"Cache-Control"是用max-age指令指定组件被缓存多久。

  对于不支持http1.1的浏览器,还是需要expires来控制,所以最好能指定两个响应头。

  但HTTP规范规定max-age指令将重写expires头。

*"off" 表示不修改"Expires"和"Cache-Control"的值。

3.举例说明:

例1:控制图片过期时间为7天

    location ~ \.(gif|jpg|jpeg|png|bmp|ico)$ {
           expires 7d;
    }

例2:控制匹配/admin/或者/user/目录里所有的文件缓存设置到最长时间  

    location ~ /(admin|user)/ {
           root    /www/;
           expires max;
    }

小讯
上一篇 2025-03-17 17:11
下一篇 2025-04-08 21:11

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/123715.html