首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
缓存机制笔记
时间:
2015-01-31 20:42:22
阅读:
153
评论:
0
收藏:
0
[点我收藏+]
标签:
浏览器端的缓存规则
新鲜度(过期机制):1)HTTP协议报头中带有完整的过期时间,并仍在有效内。 2)浏览器已经使用过缓存且在一个会话中检查过新鲜度
校验值(验证机制):浏览器再次请求,通过此值判定是否获取新的内容
浏览器缓存的控制
HTML的<meta>标签,但不是所有浏览器都支持,且对代理服务器无效
HTTP协议的报头中带有控制信息。
新鲜度:
Expires: 设定过期的具体时间
Cache-Control: 更加细致的控制。1)no-cache or no-store。2)max-age。3)public or private
Last-Modified: 告诉浏览器当前资源的最后修改时间
If-Modified-Since: 告诉服务器当前资源的浏览器所知道的最后修改时间
校验值:
ETag:告知浏览器当前资源的唯一标识符
If-None-Match: 告知服务器当前资源浏览器所知道的唯一标识符
缓存机制的层次
通过Cache-Control/Expires形成第一道缓存:直接去本地
通过Last-Modified/ETag形成第二道缓存:304返回
ETag存在的原因
Last-Modified是秒级的,在一秒内多次变化的资源无法体现
定期生成的文件,无变化但也无法缓存
优先级
Cache-Control > Expires
ETag > Last-Modified
Cache-Control/Expires > ETag/Last-Modified
不缓存的情况
HTTP头中,Cache-Control:max-age=0 或是 Cache-Control:no-cache 或是 Pragma:no-cache
不带任何和缓存有关的HTTP头时,不缓存
POST请求不会被缓存
HTTPS请求不会被缓存
动态内容不会被缓存
参考资料:
http://www.alloyteam.com/2012/03/web-cache-2-browser-cache/
缓存机制笔记
标签:
原文地址:http://my.oschina.net/nswish/blog/373962
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!