每当我遇到网站问题时,我会听到的第一个建议是“尝试清除浏览器缓存”以及“删除Cookie”。那么这个浏览器缓存是什么?它存储什么,它有什么用?
我用Google搜索了一下。但是没有找到合适的答案。如果有人帮忙,我会很感激。
答案 0 :(得分:5)
浏览器缓存"缓存" (如保留本地副本)从互联网下载的数据。下次您的浏览器需要相同的数据时,它可以从缓存中获取(快速)而不是通过互联网下载(慢速)
问题是数据可能很旧。例如,想象一下今天浏览器缓存了www.nytimes.com,24小时后你再次访问了www.nytimes.com。如果浏览器加载了缓存数据,那将是旧闻。
所以服务器发送给浏览器的headers(元数据)告诉他们应该缓存一些东西(如果有的话)。
浏览器通常缓存的数据是"请求"哪一个。换句话说,如果您的浏览器要求" http://foo.com/bar.html"浏览器第一次“请求”#34; " foo.com"发送它" bar.html"。如果来自" foo.com"以某种方式设置浏览器将保存" bar.html"的本地副本。如果您再次请求相同的内容,浏览器可能会加载" bar.html"来自它的缓存。我说"可能"因为它取决于从服务器发送的标头。服务器可以说多长时间(例如10分钟,10小时,10天等等)或者它可以说根本不缓存这个,总是下载最新版本"。
如果您使用浏览器的开发工具(如下所示的Chrome)并查看网络标签(不确定在其他浏览器中调用了什么)。再次加载页面,您可以看到所有请求。您还会注意到哪些是从缓存中加载的
如果单击某个请求,您可以从浏览器(请求标头)和服务器(响应标头)中看到元数据
清除缓存的原因经常修复的问题是,如果由于某种原因服务器(一个错误?)说可以缓存或使用缓存版本,但服务器上的数据实际上已经更新。浏览器执行服务器告诉它要做的事情,就是使用缓存中的副本,而不是实际需要的新版本。浏览器本身也可能不时出现与缓存相关的错误。
当一切正常工作时,它很棒,但如果一件事或另一件事配置错误或发送错误的标题,那么浏览器最终可能会从缓存中加载旧数据而不是下载最新数据。有效清除缓存会强制浏览器再次下载数据。
您可以找到what the various headers do here的详细信息。
答案 1 :(得分:3)
浏览器缓存不仅仅是垃圾箱,而是一种加速我们浏览网络的机制。我们访问的每个网站都有一些常见的元素,如徽标,导航按钮,GIF动画文件,脚本文件等。当我们从页面跳转到浏览器时,浏览器下载每个元素(通常也称为临时Internet文件)是没有意义的。另一个和后面。
我们访问网站时会下载页面元素,浏览器会在浏览网站时检查其缓存文件夹中的副本。如果存在副本,则浏览器不会再次下载相同的文件,从而显着加快了Web浏览速度。 了解更多信息.. http://www.guidingtech.com/8925/what-are-browser-cache-cookies-does-clearing-them-help/
答案 2 :(得分:1)
https://en.wikipedia.org/wiki/Cache_(computing)
谷歌的第一个结果,这是正确的答案,但我会总结=]
1)什么是浏览器缓存? 缓存是一个存储数据的组件,因此可以更快地提供对该数据的未来请求;存储在高速缓存中的数据可能是较早计算的结果,或者是存储在别处的数据的副本。
2)它存储了什么? Web浏览器和Web代理服务器使用Web缓存来存储Web服务器以前的响应,例如网页和图像。
3)有什么好处? Web缓存减少了需要通过网络传输的信息量,因为以前存储在缓存中的信息通常可以重复使用。这减少了Web服务器的带宽和处理要求,并有助于提高Web用户的响应能力。