b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

【干货】控制网页缓存的方法与方法(二)

电脑杂谈  发布时间:2021-05-23 22:04:19  来源:网络整理

2. 1. 2、缓存控制

在HTTP / 1. 1中,缓存控制是最重要的规则,主要用于控制网页缓存。主要值是:-public:将缓存所有内容(客户端和代理服务器均缓存)-private:所有内容只能由客户端缓存,Cache-Control-no-cache的默认值:客户端缓存内容,但是是否需要协商是否使用缓存以验证无决定存储:将不缓存所有内容,即,既不使用强制缓存也不使用协商缓存-max-age = xxx( xxx为数字):缓存的内容将在xxx秒后失效

应该注意的是,no-cache这个名称有点误导。设置无缓存后,并不意味着浏览器不再缓存数据,而是在浏览器使用缓存的数据时,需要确认数据是否仍与服务器一致,即协商缓存。没有存储意味着它不会被缓存,也就是说,没有使用强制缓存或协商缓存

2. 1. 3、设置

强缓存要求服务器设置过期和缓存控制。 nginx代码参考,设置一年的缓存时间:

location ~ .*\.(ico|svg|ttf|eot|woff)(.*) {
  proxy_cache               pnc;
  proxy_cache_valid         200 304 1y;
  proxy_cache_valid         any 1m;
  proxy_cache_lock          on;
  proxy_cache_lock_timeout  5s;
  proxy_cache_use_stale     updating error timeout invalid_header http_500 http_502;
  expires                   1y;
}

浏览器的缓存存储在哪里,如何确定强制性缓存在浏览器中是否有效?这是磁盘缓存和内存缓存中的内容,我们将在下面进行讨论。

2. 2、来自磁盘缓存和内存缓存

在认真开发时,学生应该注意到,Chrome的网络请求大小将在以下三种情况下出现:来自磁盘缓存,来自内存缓存以及资源大小值。

浏览器缓存

浏览器缓存

缓存图片查看器_css缓存图片查看器_浏览器缓存

浏览器读取缓存的顺序是内存->磁盘。以访问为例。当我们第一次访问

浏览器缓存

浏览器缓存

关闭标签,然后再次打开

浏览器缓存

浏览器缓存

当F5刷新时

浏览器缓存

浏览器缓存

一个简单的比较

浏览器缓存

浏览器缓存

3、协商缓存

缓存协商是一个过程,在该过程中,浏览器携带缓存标识符,以在迫使缓存过期后向服务​​器发起请求,然后服务器根据缓存标识符来决定是否使用缓存。主要有两种情况:

浏览器缓存

浏览器缓存

浏览器缓存

浏览器缓存

3. 1、自上次修改的浏览器和第一个修改的文件以来,浏览器首先发送请求,然后让服务器在响应标头(最后修改的)中返回请求资源的最后更新时间,并且浏览器下次将缓存它。然后,在浏览器的下一个请求中,if-modified-since:[[存储的最后修改值]]将包含在请求标头中。将浏览器发送的修改时间与服务器的修改时间进行比较。如果它们一致,则资源没有更改。服务器返回的响应带有空主体,允许浏览器从缓存中读取资源,从而大大减少了请求的消耗。

由于最后修改时间取决于保存的绝对时间,因此仍然会出现错误:

保存的时间以秒为单位。 1秒内无法捕获多个修改;每台机器读取的时间不一致,并且有可能出错。为了改善这个问题,提出了使用etag。 3. 2、 ETag和If-None-Match

etag是http协议提供的几种机制中的Web缓存验证机制,它允许客户端协商缓存。生成etag的常用方法包括对资源内容使用防冲突哈希函数,使用最近修改的时间戳的哈希值或什至仅使用版本号。与上次修改的相同。-浏览器将首先发送请求以获取etag的值,然后下一个请求将在请求标头中包含if-none-match:[存储的etag值]。 -将发送的etag值与服务器重新生成的etag值进行比较。如果相同,则表示资源没有更改,服务器将返回带有空主体的响应,告诉浏览器从缓存中读取资源。

etag可以解决last-modified的一些缺点,但是每次在服务器端生成etag时,都需要进行读取和写入操作,而last-modified仅需要读取操作。从这个角度来看,etag的消耗量更大。

两种准确性之间的比较:Etag优于Last-Modified。 -优先级:Etag优先于服务器验证。 -性能:Etag不如上次修改

4、用户行为对浏览器缓存的影响打开网页,在地址栏中输入地址:检查磁盘缓存中是否存在匹配项。如果有的话使用;如果没有,请发送网络请求。普通刷新(F 5):由于未关闭TAB,因此内存高速缓存可用,并且将首先使用(如果匹配)。第二次是磁盘高速缓存。强制刷新(Ctrl + F 5):浏览器没有5、摘要

浏览器缓存

浏览器缓存

如果有错误或不严格,请纠正我,非常感谢。如果您喜欢或启发,欢迎

浏览器缓存·第9期·xiangxingchen / blog

图标

这也是对作者的鼓励。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-377607-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...