在我们的网站上检查缓存行为时,我得到了一个非常令人困惑的结果 - 我的Internet Explorer 11浏览器根本没有缓存任何文件。 Internet选项中的缓存设置设置为"检查存储页面的较新版本:自动"。
使用IE开发人员工具进一步调查,所有文件都是在没有" if-modified-since" HTTP标头,当然导致服务器返回具有200状态结果的完整文件。预期的行为是IE应该发送" if-modified-since"标题,然后服务器以304(未修改)状态响应,告诉浏览器使用缓存副本。
我尝试过的所有网站都会出现同样的行为。
然后我使用browserstack.com在Windows 7机器上打开远程IE11。同样的结果,没有缓存文件。但是,在Windows 8.1计算机上,IE11会缓存文件并发送" if-modified-since"标题,导致304回复。
我包含示例请求和响应标头:
来自Windows 7 / IE11的请求:
Request:GET /EdUwb.png HTTP/1.1
Accept:image/png, image/svg+xml, image/*;q=0.8, */*;q=0.5
Referer:http://stackoverflow.com/
Accept-Language:sv-SE
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding:gzip, deflate
Host:i.stack.imgur.com
Connection:Keep-Alive
来自Windows 7 / IE11的响应:
Response:HTTP/1.1 200 OK
Date:Wed, 05 Aug 2015 14:30:43 GMT
Content-Type:image/png
Content-Length:3635
Connection:keep-alive
Set-Cookie:__cfduid=dfbb24e8f5badb07e8f2bbd969590320b1438785043; expires=Thu, 04-Aug-16 14:30:43 GMT; path=/; domain=.imgur.com; HttpOnly
Cache-Control:public, max-age=315360000
ETag:"c5d00c1be2583713eca1d0ad1efdb914"
Expires:Sat, 02 Aug 2025 14:30:43 GMT
Last-Modified:Thu, 02 Apr 2015 19:36:41 GMT
x-amz-version-id:Rmrsr2WfDsdFppBa_Ju10BC3Y52.bglA
CF-Cache-Status:HIT
Vary:Accept-Encoding
Server:cloudflare-nginx
CF-RAY:2113339ae74b0a48-ARN
来自Windows 8.1 / IE11的请求:
Request:GET /EdUwb.png HTTP/1.1
Accept:image/png, image/svg+xml, image/*;q=0.8, */*;q=0.5
Referer:http://stackoverflow.com/
Accept-Language:en-US
User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding:gzip, deflate
Host:i.stack.imgur.com
If-Modified-Since:Thu, 02 Apr 2015 19:36:41 GMT
If-None-Match:"c5d00c1be2583713eca1d0ad1efdb914"
Connection:Keep-Alive
来自Windows 8.1 / IE11的响应:
Response:HTTP/1.1 304 Not Modified
Content-Type:image/png
Content-Length:3635
ETag:"c5d00c1be2583713eca1d0ad1efdb914"
x-amz-version-id:Rmrsr2WfDsdFppBa_Ju10BC3Y52.bglA
CF-Cache-Status:HIT
Vary:Accept-Encoding
CF-RAY:21133083e7920c5f-AMS
Expires:Sat, 02 Aug 2025 14:28:19 GMT
Last-Modified:Thu, 02 Apr 2015 19:36:41 GMT
有没有人知道为什么文件没有在Windows 7上缓存?
答案 0 :(得分:25)
答案 1 :(得分:0)
在IE中取消选择以下设置:
Internet选项>“高级”选项卡>“设置”>“安全性”>关闭浏览器时清空Internet临时文件文件夹。
访问此处以获取更多信息:http://muthukumarsankaralingam.blogspot.com/2018/08/configure-internet-explorer-to-read.html