#协商缓存响应头生成算法

  1. ETag 值是如何生成的

    实现方法不同,nginx 是由响应头的 Last-Modified 与 Content-Length 表示为十六进制组合而成

  2. ETag 与 Last-Modified 有何区别 Last-Modified 时间精度只有秒级别且对修改后恢复的文件无反应,ETag 拥有比 Last-Modified 更高的精度,且可以自定义实现方式,根据 Last-Modified 与其他请求头综合取值

  3. 如果 http 响应头中 ETag 值改变了,是否意味着文件内容一定已经更改

    并不一定,看具体实现方式,例如 nginx, 会在文件长度没变且 Last-Modified 更改时改变