关于Cache-Control: no-cache和no-store

来源:互联网 发布:跟兄弟连学php.pdf下载 编辑:程序博客网 时间:2024/05/19 20:19

在公司上班的正真上班的第一天,发现的jsp页面上,设置了response HTTP头,是设置了这三个属性:
Cache-Control: no-cache,Cache-Control:no-store,Expires
这三个属性都是和网页的缓存有关。

HTTP1.0

HTTP1.0中通过Pragma 控制页面缓存,通常设置的值为no- cache,不过这个值不这么保险,通常还加上Expires置为0来达到目的。但是如我们刻意需要浏览器或缓存服务器缓存住我们的页面这个值则要设置为 Pragma。

HTTP1.1

HTTP1.1中启用Cache-Control 来控制页面的缓存与否,这里介绍几个常用的参数:

  • no-cache,浏览器和缓存服务器都不应该缓存页面信息;
  • public,浏览器和缓存服务器都可以缓存页面信息;
  • no-store,请求和响应的信息都不应该被存储在对方的磁盘系统中;
  • must-revalidate,对于客户机的每次请求,代理服务器必须想服务器验证缓存是否过时

Expires

表示存在时间,允许客户端在这个时间之前不去检查(发请求),等同max-age的 效果。但是如果同时存在,则被Cache-Control的max-age覆盖。 格式: Expires = “Expires” “:” HTTP-date

0 0