Cache-control

浏览器缓存知识小结及应用  http://web.jobbole.com/84888/

网页缓存由 HTTP消息头中的Cache-control控制,常见取值有private、no-cache、max-age、must- revalidate等,默认为private

其作用根据不同的重新浏览方式,分为以下几种情况:

(1)、打开新窗口

值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。

而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:

Cache-control:max-age=5(表示当访问此网页后的5秒内再次访问不会去服务器)

(2)、在地址栏回车

值为private或must-revalidate则只有第一次访问时会访问服务器,以后就不再访问。

值为no-cache,那么每次都会访问。

值为max-age,则在过期之前不会重复访问。

(3)、按后退按扭

值为private、must-revalidate、max-age,则不会重访问,

值为no-cache,则每次都重复访问

(4)、按刷新按扭

无论为何值,都会重复访问

Cache-control值为“no-cache”时,访问此页面不会在Internet临时文章夹留下页面备份。


Public

指示响应可被任何缓存区缓存。

Private

指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。

no-cache

指示请求或响应消息不能缓存

no-store

用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。

max-age

指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。

min-fresh

指示客户机可以接收响应时间小于当前时间加上指定时间的响应。

max-stale

指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。


不缓存

Cache-Control: no-cache:这个很容易让人产生误解,使人误以为是响应不被缓存。实际上Cache-Control: no-cache是会被缓存的,只不过每次在向客户端(浏览器)提供响应数据时,缓存都要向服务器评估缓存响应的有效性。

Cache-Control: no-store:这个才是响应不被缓存的意思。

Pragma: no-cache:跟Cache-Control: no-cache相同,Pragma: no-cache兼容http 1.0 ,Cache-Control: no-cache是http 1.1提供的。因此,Pragma: no-cache可以应用到http 1.0 和http 1.1,而Cache-Control: no-cache只能应用于http 1.1.

不缓存兼容设置

C# 不缓存设置

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值