6. Nginx浏览器缓存原理

与缓存有关的请求头

key value 说明
Cache-Control max-age=0 客户端向服务器端表明,如果缓存过期了,但是过期时间还没有超过指定时间(以秒为单位),则直接返回304即可。
If-Modified-Since Wed, 09 Aug 2017 10:28:55 GMT 根据修改时间来判断文件是否修改过。如果没有修改,则使用缓存。
If-None-Match 598ae3e7-c 根据hash来判断文件是否修改过,如果没有修改,则使用缓存。

与缓存有关的响应头

key value 说明
Expires - http1.0协议中定义的,建议使用更强大的Cache-control
Cache-control max-age=86400 http1.1协议中定义的,提供了对缓存更细致的控制,优先级也高于Expires。max-age=86400表示客户端在24小时内,无须向服务器端发送请求,可以直接使用本地的缓存文件。但是Chrome等浏览器并没有遵守,而是每次都想浏览器发送请求进行校验。
Last-Modified Wed, 09 Aug 2017 10:28:55 GMT 此文件的最后修改时间
ETag 598ae3e7-c 此文件的最新hash值

专题阅读

原文地址:https://www.cnblogs.com/zy108830/p/12600307.html