缓存可以加快Web请求的速度,在Web应用中,缓存有多种, 包括:
- 浏览器端缓存
- 中间缓存服务器端缓存
- Web服务器端缓存
以浏览器端缓存为例,浏览器将服务端响应的页面、图片、样式或是JS文件等保存在浏览器本地, 下次访问的时候直接从本地查找就可以显示, 好处是可以加快页面的展现速度,提高用户体验;坏处就是缓存的内容不是最新的, 所以在某些场景下需要禁用缓存。
HTML协议中对缓存的控制
HTTP 协议中使用头信息控制缓存信息, 包括浏览器端,中间缓存服务器端,Web服务器端。
HTTP协议中用于缓存信息头关键字包括:
- Cache-Control , HTTP 1.1 版本使用
- Pragma: HTTP 1.0 版本使用。
- last-Modified 最近修改的时间
- Expires 过期时间
Pragma
Pragma可以设置的值有:
- Pragma: 浏览器和缓存服务器都不缓存缓存
- no-cache: 浏览器和缓存服务器都不缓存, 需要结合Expires为0.