`

浏览器缓存

阅读更多
  • Web服务器:Apache | Microsoft-IIS | Nginx | Lighttpd | Squid | LiteSpeed | IBM_HTTP_SERVER |Varnish
  •  

     

    让WEB站点的内容缓存在浏览器中,减少服务器计算开销,避免带宽浪费(网络IO开销)

    缓存协商

    缓存协商一般基于GET请求的情况,而对于POST类型的请求,浏览器一般不启用本地缓存.

    Last-Modified 一般Web服务器会为静态文件的HTTP响应头自动生成最后修改时间, 浏览器再次访问时,一般增加

    If-Modifed-Since的标记,对于静态内容,Web服务器只要获得静态文件的最后修改时间和浏览器询问的时间进行对比即可.

    304 Not Modified 告诉浏览器,内容没有更新,可使用本地缓存

    使用这种方式的服务器:  nginx 

    ETag

    采用一串编码来标记内容. Web服务器为响应头增加ETag的标记,浏览器在HTTP请求头中附加If-None-Match标记.

    使用这种方式的服务器:  tomcat, apache

     

    基于最后修改时间的缓存协商,用户的请求在服务器之间轮询,实现负载均衡时,这些服务器同一个文件的最后修改时间很难保证完全相同,导致用户的请求在切换到新的服务器时重新获取内容,所以要注意这个问题,最后文件的最后修改时间和内容完全相同.

     

     浏览器缓存截至期Expires

     浏览器在内容过期之前不再询问服务器,直接使用本地缓存.

     Web服务器一般不开启此标记支持,需要额外配置. apache,nginx都需要增加相应设置

    对于常见的静态文件格式,即使没有Expires标记,IE在某种缓存模式下,对GIF图片也设置永不过期,除非可配置Expires马上过期,及设置Expires为当前时间或0.

     

    对于JSP,服务器端的HttpServlet可通过设置特定HTTP响应头来禁止客户端缓存网页,那么只需在JSP的页面头部加入以下代码,
    设置response变量引用HttpServletResponse对象,即可达到禁止客户端浏览器缓存页面的效果:

    <%     
    response.addHeader("Pragma","no-cache");     
    response.setHeader("Cache-Control","no-cache");     
    response.setHeader("Expires",0); 

     %>
    “Pragma”选项适用于采用HTTP 1.0的浏览器。在HTTP 1.1中,“Cache-Control”选项来决定客户端是否可以缓存网页,如果取值为“no-cache”,那么客户端不会把Servlet生成的网页保存在本地缓存中。HTTP 1.0和HTTP 1.1都支持“Expires”选项,因此所有的浏览器都能识别该选项。“Expires”选项用于设定网页过期的时间,如果为零,就表示立即过期。如果用户重复请求访问该页面,那么浏览器每次都会从服务器端获取最新的网页数据。

     

    Ctrl+F5强制刷新

    F5刷新,对Last-Modified有效,对Expires无效

    '转到'  Expires只对这种方式有效

     

    适应本地的过期时间 Cache-Control: max-age=<second>

    对于静态内容,Web服务器在开启Expries的同时,一般自动添加响应的Cache-Control标记, 浏览器优先考虑Cache-Control 

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    分享到:
    评论

    相关推荐

      浏览器缓存机制介绍与缓存策略剖析.pptx

      浏览器缓存机制介绍与缓存策略剖析 浏览器缓存机制是指浏览器在请求资源时,对已经请求过的资源进行缓存,以便下次请求时可以直接从缓存中获取,从而提高页面加载速度和减少服务器的压力。本文将详细介绍浏览器缓存...

      Loadrunner负载测试 浏览器缓存设置

      在这个特定的场景下,我们关注的是“Loadrunner负载测试中的浏览器缓存设置”。了解如何在LoadRunner中正确设置浏览器缓存对于获取真实用户行为的数据至关重要,因为这直接影响到测试结果的准确性。 浏览器缓存是...

      HTTP+JS+浏览器缓存技术

      2. 使用 jQuery Ajax 清除浏览器缓存:可以使用 $.ajax() 方法并设置 cache:false,或者使用 If-Modified-Since 和 Cache-Control 请求头来清除浏览器缓存。 3. 使用随机数或随机时间来避免缓存:可以在 URL 参数后...

      Chrome浏览器缓存查看导出工具(支持最新版)

      Chrome浏览器缓存查看导出工具是一款专为用户设计的实用软件,它允许用户方便地查看、管理和导出Chrome浏览器中的缓存数据。这款工具对于开发者、网站管理员以及那些需要全面了解浏览器缓存工作原理的人来说非常有用...

      浏览器缓存目录设置

      ### 浏览器缓存目录设置 在日常的网络浏览过程中,浏览器缓存的作用非常重要,它不仅能够提高网页加载速度,还能有效减少硬盘碎片的产生,进而提升整体系统的运行效率。本文将详细介绍如何针对不同浏览器(如Fire...

      js浏览器缓存.doc

      ### JS浏览器缓存详解 #### 一、问题背景与概述 在进行Web开发的过程中,开发者可能会遇到一个较为隐蔽但十分常见的问题——浏览器缓存导致的重复请求失效现象。特别是使用某些JavaScript库(如Prototype.js)时,...

      jsp去除浏览器缓存

      ### jsp去除浏览器缓存详解 #### 一、引言 在Web开发中,为了提高用户体验及页面加载速度,浏览器通常会缓存一部分资源。但有时为了确保用户获取到最新的内容,我们需要禁止或控制浏览器对特定页面的缓存。本文将...

      浏览器缓存查看及恢复工具

      浏览器缓存是网络浏览的重要组成部分,它帮助用户快速加载先前访问过的网页,通过存储静态资源如图片、JavaScript和CSS文件,减少对服务器的请求。本文将深入探讨浏览器缓存的工作原理,以及如何使用“浏览器缓存...

      Microsoft edge 浏览器缓存改成内存虚拟盘(盘符R)

      Microsoft edge 浏览器缓存改成内存虚拟盘(盘符R) Microsoft edge 浏览器缓存改成内存虚拟盘(盘符R) Microsoft edge 浏览器缓存改成内存虚拟盘(盘符R)

      UC浏览器缓存加密视频Y2hlbmppbmdjb25n文件破解合并exe工具

      1、【合并视频.exe】可将UC浏览器缓存或下载的Y2hlbmppbmdjb25n加密或非加密视频文件合并成mp4视频的工具。 2、使用示例:https://img-blog.csdnimg.cn/0a29f18018c246ebbe70efb82f72c288.png 该示例图可以复制链接...

      浏览器缓存读取工具

      浏览器缓存是网络浏览的重要组成部分,它用于存储网页的静态资源,如图片、JavaScript文件、CSS样式表等,以便在用户再次访问同一页面时能够快速加载,提高网页的响应速度和用户体验。`ChromeCacheView`是一款实用的...

      清除Flash缓存和各种浏览器缓存的方法.docx

      清除Flash缓存和各种浏览器缓存的方法 清除Flash缓存和各种浏览器缓存的方法是计算机用户常用的技术技能,以解决浏览器缓存引发的问题,如卡机、进不去、游戏滞后等问题。下面将详细介绍清除Flash缓存和各种浏览器...

      UC浏览器缓存加密视频文件破解合并工具(java工程).rar

      2、工具用于破解UC浏览器缓存或下载的Y2hlbmppbmdjb25n文件破解加密文件; 3、若文件没有加密,可使用简单快捷视频合并工具:https://download.csdn.net/download/gongjin28_csdn/25512908 4、判断文件是否是加密...

      三星T231如何清除浏览器缓存-T231清除浏览器缓存教程.docx

      ### 三星T231清除浏览器缓存教程 #### 一、引言 随着移动互联网技术的飞速发展,智能手机已成为人们日常生活中不可或缺的一部分。在众多智能手机品牌中,三星凭借其出色的性能和丰富的功能深受用户喜爱。对于三星T...

      提取浏览器缓存中的视频文件

      如果视频被储存在浏览器的缓存文件夹中,这个软件可以帮助你从缓存文件夹中找到该视频文件并保存到其他位置。 它会自动扫描IE、基于Mozilla的网页浏览器(包括FireFox)的整个缓存文件夹,并找出当前储存在里面的所有...

      UC浏览器缓存视频文件合并工具

      1、若是UC浏览器的视频文件:Y2hlbmppbmdjb25n0 Y2hlbmppbmdjb25n1 Y2hlbmppbmdjb25n2......用此工具类(合并无加密)。 2、若是0.ts、1.ts、2.ts类型视频合并到此:...

      浏览器缓存机制面试常考.zip

      浏览器缓存【2024年浏览器缓存简介】 内容概要: 这篇博客为网络技术初学者提供了一个全面的理解浏览器缓存的知识。通过通俗易懂的语言,本博客介绍了浏览器缓存的工作原理,HTTP缓存控制字段,缓存策略的应用,以及...

      浏览器缓存相关知识.zip

      浏览器缓存 浏览器缓存主要可以分为两大类:客户端缓存和服务端缓存。客户端缓存,即浏览器缓存,是本文主要讨论的内容。而服务端缓存则主要包括代理服务器缓存和反向代理服务器缓存,以及广泛使用的CDN等。这些...

      如何删除浏览器缓存.docx

      删除浏览器缓存的方法和 importance 浏览器缓存是一种临时存储在电脑里的网页内容和信息,以便提高访问网页的速度。但是,缓存也可能会导致网页不能及时更新和加载最新的数据。因此,定期清理浏览器缓存是非常必要...

    Global site tag (gtag.js) - Google Analytics