## HTTP的缓存机制
私有缓存
只能用于单独用户
缓存是什么
- 缓存就是一种保存资源副本并在下次请求时直接使用该副本的技术
- 缓存需要合理配置,因为并不是所有资源都是永久不变的(有生命周期)
带宽:可以理解为所耗用的流量的大小
缓存的优势
- 缓解服务器端的资源消耗和运作压力,提升服务器的整体性能
- 减少服务器端资源加载的延迟,进而减少显示某个资源所用的时间
- 减少对带宽造成的压力,避免网络阻塞问题的出现
- Web站点变得更具有响应性
缓存的应用
常见的HTTP缓存只能存储GET响应
- 检索请求的成功响应
- 不变的重定向:响应状态码为301
- 错误响应:响应状态码为404的一个界面
- 不完全的响应:响应状态码为206,返回局部信息
- 除了GET请求外:如果匹配到作为一个已被定义的cache键名的响应
缓存的分类
Cache-control头
-
禁止进行缓存
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SpSa4vc4-1597840430213)(https://s1.ax1x.com/2020/08/19/d12WYd.png)] -
缓存过期机制
-
缓存验证确认
Pragma头
定义一个header属性
- Pragma:no-cache(兼容所有情况)
Expires头
- 无效的日期
- 如果在Cache-Control响应头设置了“max-age”或者“s-max-age”指令,那么Expires头会被省略
注意:请求头和响应头中都可应用,更多出现在响应头中