如何检查图像是来自缓存还是来自服务器.由于我的主页包含45张图片.当我按下时F5,想要知道图像是来自缓存还是来自服务器.
我补充说 <%@ OutputCache Duration='120' Location='Client' VaryByParam='none' %>
新访问者当然没有任何缓存图像,同时他们也希望您的网站加载速度快.如果您正在测试网站的效果,那么只需清除缓存即可?
如果它只是用于调试:
Safari有一个Developer菜单,可以通过首选项启用.这里,当从缓存加载某些内容时,Web Inspector中的"资源"选项卡将显示0毫秒.查看详细信息,您将看到在这些情况下缺少请求标头(尽管仍可以查看旧的响应标头).
将Firefox与Live HTTP Headers附加组件一起使用将向您显示服务器请求的确切内容.如果未请求,则从缓存加载.(在这种情况下,没有请求,甚至没有使用If-Modified-Since
标题.)
安装了Firebug插件的Firefox 为您提供了Net选项卡,但是当启用时,Firefox将始终再次请求所有内容,即使您没有单击Refresh但只是跟随某些链接(因此始终使用If-Modified-Since
标题,请参见下文) ).这仍然会显示"未修改".一些精简版的Firebug也可用于Internet Explorer.
请注意,点击F5/Refresh将使大多数浏览器始终询问服务器是否已更改浏览器已缓存的内容,即使它知道缓存仍应有效.然后该请求将包含If-Modified-Since
标头.如果服务器说它未被修改,则使用缓存.喜欢:
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
以上与导航网站不同.单击链接或稍后返回页面时(键入地址,书签,搜索结果等),如果缓存仍然有效,浏览器将默默地使用缓存,而不会询问是否有任何更改.
(另请注意,代理服务器可能会执行一些缓存.在上面的响应中,public
in Cache-Control
表示代理确实可以缓存该特定响应.)