博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常用 Header 简单讲解和优先级顺序
阅读量:4565 次
发布时间:2019-06-08

本文共 876 字,大约阅读时间需要 2 分钟。

 

HTTP 协议本身设计的优先级顺序如下:

最上面优先级最高,到下面最小:

Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: must-revalidate
Cache-Control: max-age
Expires:
 

常用 Header 简单讲解:

1. 不缓存控制

  • Cache-Control: no-store : 禁止中间的缓存服务器存储这个对象.并给 header 转发给用户.
  • Cache-Control: no-cache : 缓存服务器可以给文件缓存在本地缓存区.只是在和源站进行新鲜验证前,不能提供给客户端使用.
  • Pragma: no-cache  这是兼容 HTTP/1.0 时使用.原则上只能用于 HTTP 请求.用处和 Cache-Control: no-cache 一样

2. 指定过期时间控制

  • Cache-Control: max-age 表示如果缓存服务器拿到这个文件后,这个对象多久之内是新鲜的,可用的,可以发给客户端使用的.
  • Cache-Control: s-maxage 行为和上面一样,只是只能使用于 public 地时候缓存.
  • Cache-Control: must-revalidate 默认的情况下,缓存代理是可以提供给用户一些旧的对象的内容,以提高性能.但如果原始服务器不希望这样,就可以配置这个选项.进行严格检查.比如源站不可用时,回源验证过程会失败.默认会吐旧的数据.但配置了这个以后会吐 504 Gateway Timeout
  • Expires:  这个作用和 max-age 是一样.但这是指定一个过期的日期,但不是秒数.所以不建议使用.因为很多缓存服务器和源服务器常常时间不同步,所以基于 max-age 是使用相对的时间来表示还剩下多少秒可用.不要使用 Expires 来使用绝对时间.

转载于:https://www.cnblogs.com/houyulei/archive/2012/10/18/2729266.html

你可能感兴趣的文章
restful接口就是url嘛,通过http请求发起访问。那接口进行监控,就可以监控这个restful url嘛...
查看>>
MFC中字符串赋值出现“Error:“const char*”类型的实参与“LPCWSTR”类型的形参不兼容”错误的解决方法...
查看>>
hdu1540 区间合并+询问某点的最大连续块
查看>>
生成器和生成器函数以及各种推导式
查看>>
c#找不到类型或命名空间名称“Word”
查看>>
Oracle,第四周
查看>>
用BeautifulSoup简单爬取BOSS直聘网岗位
查看>>
2.13生成可控的随机数据集合 生成九个分布的直方图
查看>>
成员变量、局部变量和静态变量的区别 (转)
查看>>
图论总结
查看>>
《当我谈跑步时,我谈些什么》读后笔记
查看>>
utmp
查看>>
thymeleaf模板使用详解
查看>>
Sql日期时间格式转换
查看>>
固态硬盘——Trim,IGC技术
查看>>
结对编程-四则运算
查看>>
别再问什么是Java内存模型了,看这里!
查看>>
Leetcode OJ: Remove Duplicates from Sorted List I/II
查看>>
南邮 单身二十年
查看>>
如何在IIS7下配置ASP+ACCESS环境
查看>>