ctrl+f5 与f5 和enter刷新的区别

上一篇 / 下一篇  2013-06-13 15:17:37 / 个人分类:网站基础

原文引用:http://www.cnblogs.com/cxd4321/archive/2009/03/11/1408425.html
(*^__^*) 嘻嘻……今天有人反映网站访问慢,在打开我个人网站空间时,发现有图片请求返回502,在发现这个的同时我发现在firebug里,当在浏览器的url地址里直接回车进行刷新和按住f5刷新和ctrl+f5刷新,请求数不一样,显示的效果不一样。觉得好奇,就百度了下,就发现链接里的文章,写的真好,先收藏链接,再自己回顾总结一下。好奇真好啊。
url地址栏里敲击enter:这样的刷新,大家可以在firebug里看一下,只有少数的请求会发送出去,而且几乎没有图片的请求,这是因为请求时会先检查本地是不是缓存了请求的图片,如果有缓存而且没有过期(过期可以通过该图片请求的header查看),他就不会发出这个图片request。
f5:f5刷新比enter略慢,为什么呢,因为他还是把所有请求都发给了server,只是在request里的header里有信息
Fri, 28 Jun 2013 07:29:55 GMT
Mon, 21 Mar 2011 09:26:23 GMT
服务器判断还没有过期,就直接返回304not modified,在firebug里看就是这些304的请求都为灰色。因为直接返回304这样的信息,而不是图片等内容,他比ctrl+f5快,但是比enter慢,因为他还是把所有请求都发了一遍,比enter的不发请求自然是慢的。
ctrl+f5:这个就要慢了,应为所有的请求都是重新发送,重新从server读取内容,一点cache都没有读。为了防止在server的cache里读取,在ctrl+f5刷新时,request的header里还加了特殊字段,这个大家可以用firebug看一下,还挺有意思的。在request header 里会加pragma:no-cache   cache control:no-cache。这两个就是告诉服务器到浏览器中间的所有节点,没有cache,看到这个中间节点也不查自己的cache,保证请求都是从server获得的。
总结:firebug对照着看,理解更清晰

相关阅读:

TAG: 刷新 F5 f5 网页刷新

 

评分:0

我来说两句

Open Toolbar