关于Cache-Contro缓存
来源:互联网 发布:淘宝男装推荐 编辑:程序博客网 时间:2024/06/05 00:35
浏览器缓存一直是web开发人员比较重视的优化点
这要有这个几个http header来控制:
Cache-Control中的max-age
expires
Last-Modified
ETag
其中max-age 和 expires可分在一组
Last-Modified 和 ETag分在一组
下面讲一下两组的区别
max-age 和 expires
当浏览器再次请求一个资源时会检查缓存响应中的max-age,如果没有过期则直接使用缓存中的数据,‘刷新’浏览器例外;
expires的作用跟max-age一样,区别在于同时存在时max-age会覆盖expires
max-age可用在image css js等不常变化的资源
Last-Modified 和 ETag
这个两个头跟上面的区别在于必须发送请求到服务器,服务器来判断是否发送响应体
Last-Modified必须与If-Modified-Since配合使用
工作过程如下:
1 服务器发送带有Last-Modified头的响应给浏览器,浏览器缓存之
2 再次请求改页面时,浏览器会把上次Last-Modified的时间用If-Modified-Since头发送给服务器
3 服务器检查If-Modified-Since时间是否过期,如果过期发送新数据;否则发送304告诉浏览器缓存数据时有效的
Etag的原理跟Last-Modified基本上是一样的
上述两种缓存方式都可降低对服务器的压力, 节约了网络带宽 提高了服务器的处理能力
另外gzip也是比较简单且有效的节约带宽方式
=============================================
刚才用etherreal抓包
max-age=604800 时,浏览器不发送任何请求
刷新浏览器则发送http get /images/aaa.gif 返回的是304状态
http://xuliangyong.javaeye.com/blog/606311
- 关于Cache-Contro缓存
- 关于CPU 缓存Cache
- 关于缓存行(cache line)
- dubbo源码解析,关于cache缓存日志
- 缓存cache
- 缓存 Cache
- 缓存 Cache
- 缓存--cache
- Cache缓存
- Cache缓存
- Cache缓存
- (总结)关于Linux的缓存内存 Cache Memory详解
- 关于Linux的缓存内存 Cache Memory详解
- (总结)关于Linux的缓存内存 Cache Memory详解
- 关于阵列卡的配置参数Cache Policy(缓存策略)
- 关于Linux的缓存内存 Cache Memory详解
- (总结)关于Linux的缓存内存 Cache Memory详解
- (总结)关于Linux的缓存内存 Cache Memory详解
- Spring3.0的ShallowEtagHeaderFilter
- IIR数字滤波器实现
- Essentials of JMX API - Standard MBeans
- Flash多选多文件上传
- javascript所有事件
- 关于Cache-Contro缓存
- jsp中让IE提示文件下载,而不是直接打开
- Ubuntu下最好用的SVN客户端
- 糊涂的爱情,糊涂爱
- linux C:wait函数
- List of AT commands
- POJ 2135 Farm Tour
- lucene 抛出的异常
- B*索引:唯一和非唯一索引的区别