last-modified和etag这两个属性校验流程 不是太理解

来源:3-6 Nginx作为静态资源web服务_浏览器缓存原理

qq_灬Mamba磊_0

2018-01-15

last-modified和etag 是response headers里的信息,这个信息不是浏览器访问http请求之后,服务器返回的嘛,怎么比对这个两个属性和服务器上的文件的时间戳和etag字符串呢,不是应该在request headers 把这两个属性带到服务器端进行校验的嘛 不是太理解

写回答

1回答

qq_灬Mamba磊_0

提问者

2018-01-15

//img.mukewang.com/szimg/5a5c7db30001453e07380350.jpg

是用request的这两个属性去校验的吧

0
1
weixin_慕圣4534646
1、先检查是否过期,用缓存文件的 max-age来判定,如果没过期,返回缓存文件,如果过期,第二步 2、请求 带上 if-Modified-Match :浏览器缓存文件上的Last-Modified时间 和 if-None-Match:Etag 发送到服务器 3、请求上的 Last-Modified时间和Etag分别和服务器上的资源的这两个字段对比,不一致,发送资源,一样的话,发送304到浏览器,调用浏览器缓存的资源。
2022-09-18
共1条回复

Nginx入门到实践-Nginx中间件应用+搭建Webserver架构

中间件、负载均衡、应用层安全防护、动静分离、Nginx+LUA开发等

4183 学习 · 908 问题

查看课程