http缓存相关概念:nginx
请求头:浏览器向服务器发送请求的数据,资源web
响应头:服务器向浏览器相应数据,告诉浏览器我是谁,我要怎么作。如,我是nginx,给你的资源是正确的200 仍是错误的404,我告诉你须要缓存多久。浏览器
缓存优先级: pragma → cache-control → expires → ETag → last-modified缓存
Http1.0: Pragma(已废弃), expires服务器
Http1.1: Cache-control, ETag, Last-Modified加密
http缓存能够分为两类: 强制缓存,协商缓存代理
对于强制缓存,服务器通知浏览器一个缓存时间,在缓存时间内,下次请求直接用缓存,不在时间内则执行协商缓存策略。cdn
对于协商策略,将缓存信息中的ETag和Last-Modified经过请求发送给服务器,有服务器校验,返回304状态码时,浏览器直接使用缓存。blog
浏览器第一次请求:资源
浏览器请求 -> 无缓存 -> 向web服务器请求 -> 请求响应,缓存协商 -> 呈现
浏览器再次请求:
常见的请求头:
常见的响应头: