最近在看浏览器缓存机制,自己用Nginx搭建了个简单服务器做测试
nginx.conf文件中配置
location / {
expires 7d;
root html;
index index.html index.htm;
}
谷歌浏览器
可以看到
- response里有相应缓存7天信息
- request中没有缓存相关信息
IE浏览器
可以看到
- response里有相应缓存7天信息
- request中 有一个Pragma:no-cache参数,意思应该是不使用本地缓存,需要经过协商缓存来验证来决定;
火狐浏览器![](https://i-blog.csdnimg.cn/blog_migrate/d80e3ce7ac7385405c448d53b6eef308.png)
可以看到
- response里有相应缓存7天信息
- request中 if-modify-Since、if-None-Mathch等参数,需要经过协商缓存来验证来决定
所以当我偷偷修改页面中引用的css文件
只有谷歌浏览器下页面没有变,IE、和火狐均请求了新的Css文件,准确的说
IE请求了所有资源