http 请求会返还头部信息和主题内容,头部信息分为General,Pesponse, Request:举个例子
包含请求地址,方法,状态码,地址:端口
包含跨域白名单,连接方式,压缩方式,返回格式,日期,Keep-Alive,还有些服务器相关的东西
包含请求格式,接受哪种压缩方式,哪种语言,Cache控制,链接方式,host,Pragme,User-Agent等
这里先着重研究一下keep-alive到底是什么鬼,它对页面打开速度有影响吗?对服务器会增加压力吗?看来需要新开一片文章来说了,暂时放着。
那么,Pargma,与Cache-Control,还有Expires,Last-Modified这些到底是什么关系,相互有什么区别,优先级怎么处理。
Pragma
网上搜了一圈貌似Pragma只有一个值no-cache,用来禁止缓存的
Expires
告诉浏览器过期时间,缺点是需要跟客户端时间匹配,客户端时间不可靠。
Cache-Control 这个功能优点强大,但我们常见的只是用max-age
Cache-Control 提供了5种属性;那么如果同时设置:
Cache-Control :no-cahce,max-age:600; 那到底是缓存还是不缓存?
做个实验试试:
header("Cache-Control:max-age=600,no-cache");
缓存成功
header("Cache-Control:no-cache,max-age=600"); //位置换一下
缓存成功
结论:no-cache优先级比max-age 高,与顺序无关;