Browser 如何检查图像是否来自缓存

Browser 如何检查图像是否来自缓存,browser,caching,Browser,Caching,如何检查图像是来自缓存还是来自服务器。因为我的主页包含45幅图片。当我按F5时,我想知道图像是来自缓存还是来自服务器 我已经添加了新访问者当然不会有任何缓存的图像,同时他们也希望您的站点能够快速加载。如果您正在测试您的站点对它们的性能,那么只需清除缓存即可 如果只是为了调试: Safari有一个开发者菜单,可以通过首选项启用。在这里,Web检查器中的资源选项卡将在从缓存加载内容时显示0毫秒。查看详细信息时,您将看到在这些情况下缺少请求标头(尽管仍然可以查看旧的响应标头) 将Firefox与附加

如何检查图像是来自缓存还是来自服务器。因为我的主页包含45幅图片。当我按F5时,我想知道图像是来自缓存还是来自服务器


我已经添加了

新访问者当然不会有任何缓存的图像,同时他们也希望您的站点能够快速加载。如果您正在测试您的站点对它们的性能,那么只需清除缓存即可

如果只是为了调试:

  • Safari有一个开发者菜单,可以通过首选项启用。在这里,Web检查器中的资源选项卡将在从缓存加载内容时显示0毫秒。查看详细信息时,您将看到在这些情况下缺少请求标头(尽管仍然可以查看旧的响应标头)
  • 将Firefox与附加组件一起使用将准确显示从服务器请求的内容。如果未请求,则从缓存加载。(在这种情况下,不请求任何内容,甚至不使用自标题修改后的
    。)
  • 安装了附加组件的Firefox为您提供了“网络”选项卡,但启用该选项卡后,Firefox将始终再次请求所有内容,即使您没有单击“刷新”,只是在跟踪一些链接(因此,如果自标题修改,则始终使用
    ,请参见下文)。这仍然会显示“未修改”。Internet Explorer还提供了Firebug的某些精简版本
请注意,点击F5/Refresh将使大多数浏览器始终询问服务器,浏览器已经缓存的内容是否有更改,即使它知道缓存仍然有效。如果自头修改后,请求将包含一个
。如果服务器表示未修改,则使用缓存。比如:

GET /ga.js HTTP/1.1  
Host: www.google-analytics.com  
...  
If-Modified-Since: Mon, 22 Jun 2009 20:00:33 GMT  
Cache-Control: max-age=0  

HTTP/1.x 304 Not Modified  
Last-Modified: Mon, 22 Jun 2009 20:00:33 GMT  
Date: Sun, 26 Jul 2009 12:08:27 GMT  
Cache-Control: max-age=604800, public  
Server: Golfe
以上内容不同于仅仅浏览一个站点。当点击链接或稍后返回页面时(键入地址、书签、搜索结果等),浏览器只会在缓存仍然有效的情况下静默使用缓存,而不会询问是否有任何更改


(还请注意,代理服务器可能会进行一些缓存。在上述响应中,
缓存控件
中的
公共
表示代理确实可以缓存该特定响应。)

您只需查看已服务/已交付图像请求的日志,即可从服务器端确定这一点,

这也是一个很好的答案-如果您要查找使用缓存图像的用户与从服务器或CDN中提取图像的用户的百分比,您可以将页面请求数与图像请求数进行比较。例如,如果页面请求的数量是图像请求数量的2倍,那么大约一半的用户正在使用缓存图像。