首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP 浏览器缓存_php缓存引擎

浏览器缓存动态内容,缓存的内容在浏览器本地,而内容由web服务器生成,任何一方都不可能完成这一系列过程,他们之间有一种沟通机制,这就是缓存协商....如何协商 当浏览器向web服务器请求内容时,服务器需要告诉浏览器那些内容可以被缓存,一旦浏览器知道某个内容可以缓存后,下次当浏览器需要请求这个内容时,它便不会直接向服务器请求完整内容,而是询问服务器是否可以使用本地的缓存...一个test.php <?php echo time(); ;?...浏览器缓存截止期 Expires告诉浏览器该内容在何时过期,暗示浏览器在该内容过期之前不需要询问服务器,而直接使用本地缓存即可....请求页面 ctrl+f5 它使得网页及其所有组件直接向web服务器发送请求,并且不使用缓存协商. f5 它等同于单机浏览器的刷新按钮,它允许浏览器在请求中附加表的缓存协商,但不允许浏览器直接使用本地缓存

2.1K30

浏览器缓存读取规则

服务器)与浏览器之间的代理服务器(可以拦截全站的请求,并作出相应的动作->由开发者指定的动作) 创建有效的离线体验(将一些不常更新的内容缓存浏览器,提高访问体验) 由事件驱动的,具有生命周期 可以访问...事件以后就可以缓存需要的文件,那么下次访问用户的时候可以通过请求拦截的方式查询是否存在缓存,存在缓存的化可以直接读取缓存文件,否则就去请求数据。...读取内存中的数据肯定比磁盘快,内存缓存读取高效,可是可持续时间短,会随着进程释放而释放,一旦关闭tab页面,内存缓存也就被释放了 既然内存缓存高效,能不能把内存都存在内存中?...,比之Memory Cache胜在了容量和存储时效性上 在所有浏览器缓存中,Disk Cache 覆盖面基本是最大的。...那么为了性能上的考虑,大部分的接口都应该选择好缓存策略,通常浏览器缓存策略分为两种:强缓存和协商缓存,并且缓存策略都是通过设置 HTTP Header 来实现的。

69920
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    php 清楚浏览器缓存,如何清除浏览器缓存「建议收藏」

    是因为浏览器缓存吗,怎么用php清楚浏览器缓存呢 回复内容: 头像是根据url指定的,更改头像后url仍然不变,即url指向的图片地址没变,但图片已经更换了 因为url没变所以浏览器还是用原来的图片,...是因为浏览器缓存吗,怎么用php清楚浏览器缓存呢 http://yourdomain/paht/to/you/image.jpg?...v=201310100934 PHP是运行在服务器端语言,是管不到用户的电脑的。浏览器缓存,安全方面的考量,清缓存的操作只能交给用户,也不能用JS来直接完成。...所以要让浏览器在有缓存的情形下,发出新请求的话就如1L所说,在图片之后加入查询,由于SRC地址已经改变了,浏览器就会重新取。 如果CDN有缓存的话,只能改文件名,以保证用户取到的绝对是最新的。...浏览器是根据服务器响应中的关于缓存的头部来决定是否缓存资源以及缓存多久。也就是说,实质上是通过服务器返回对应的头部来告诉浏览器那些缓存的资源需要更新。

    2K20

    HTTP缓存,浏览器缓存

    前端缓存 可分为两大类:http缓存浏览器缓存。我们今天重点讲的是http缓存,所以关于浏览器缓存大家自行去查阅。...下面这张图是前端缓存的一个大致知识点: HTTP 缓存策略分为两种: 强缓存 和 协商缓存 ,这两种缓存策略都是服务端设置 HTTP Header 来实现的 (一)强缓存缓存的意思很简单,直接从浏览器缓存过的本地进行读取...,不会去请求服务器 s-maxage:这个和上面的一样,只不过这个设置的是代理服务器的缓存时间 privte:这个表示缓存只能被客户端的浏览器缓存,不能被代理服务器缓存 public:这个表示缓存既可以被浏览器缓存...协商缓存表示在使用本地的缓存之前,会先向服务器发一个请求,与服务器协商当前浏览器缓存是否已经过期了,如果没过期,那么就使用本地的资源,如果过期了就去请求最新资源。...Cache-Control为no-cache,表示设置成协商缓存) // 判断客户端请求的是03这个图片 if(pathname === '/img/03.jpg') { // 读取 03 图片的最后修改时间

    93550

    浏览器缓存

    HTTP header 缓存工作原理 浏览器发起请求的时候,根据请求头的 express 和 cache-control 来判断是否命中强缓存,如果是,怎直接从缓存读取资源,不会发起请求。...如果没有命中强缓存浏览器会发起一个请求到服务端,并通过 last-modified If-modified-since 和 etag if-none-match 判断资源是否命中协商缓存,如果命中,...不会 中断请求,服务器会将这个请求返回(304),但是不会返回资源,资源会从缓存读取。...如果没有命中缓存,则发起请求,直接从服务器加载资源。...cookie:4kb,可以手动设置过期时间 localStorage:5M,不手动清除一直存在,可以跨标签访问 sessionStorage:5M,不可以跨标签访问,窗口回话结束自己清除 indexDB:浏览器数据库

    80310

    浏览器缓存

    本文作者:IMWeb 存勖闲 原文出处:IMWeb社区 未经同意,禁止转载 原文链接:http://www.cun-xu.cn/index.php/2018/12/26/浏览器缓存/ 今天我们来说一下浏览器缓存的问题...内存缓存 内存缓存有两个特点,分别是快速读取和时效性。...快速读取:内存换粗会将编译解析后的文件,直接存入该进程的内存中,占据该进程一定的内存资源,以便下次运行时的快速读取 时效性:一旦该进程关闭,则该进程的内存会被清空 硬盘缓存 硬盘缓存- 则是将缓存直接写入硬盘文件中...,读取缓存需要对该缓存存放的硬盘文件进行I/O操作,然后重新解析该缓存内容,读取复杂,速度比内存缓存慢。...浏览器读取缓存的顺序为memory –> disk 好啦,着急忙慌整完了,正好零点,碎觉碎觉。 明天还要考试,关老爷保佑!!!

    2.2K10

    浏览器缓存

    浏览器缓存分为强缓存和协商缓存。...源; 强缓存和协商缓存共同之处在于,如果命中缓存,服务器都不会返回资源; 区别是,强缓 存不对发送请求到服务器,但协商缓存会; 当协商缓存也没命中时,服务器就会将资源发送回客户端; 当 ctrl+f5...强制刷新⽹⻚时,直接从服务器加载,跳过强缓存和协商缓存; 当 f5 刷新⽹⻚时,跳过强缓存,但是会检查协商缓存; 强缓存缓存 表示在缓存期间不需要请求,state code 为 200, 有两种实现方式...:max-age (该字段是 http1.1 的规范,强缓存利⽤其 max-age 值来判断缓存资源的最⼤⽣命周期,它的值单位为秒) 协商缓存 如果缓存过期了,我们就可以使用协商缓存来解决问题。...协商缓存需要请求接口,如果缓存有效会返回304。

    76920

    浏览器缓存

    浏览器访问服务器端,服务器给予响应时,服务器会根据需求/场景在响应头里告知浏览器,将以下数据缓存下来:把这次请求得到的响应体缓存到本地文件中标记这次请求的请求方法和请求路径根据服务器返回值,标记缓存(...过期)时间记录服务器这次响应时间,格式为格林威治时间标记录服务器给予的资源编号标记录资源的上一次修改时间,格式为格林威治时间当浏览器再次请求时,会优先去缓存里查找,有没有命中的缓存,没有的话,即立即请求...一般设置其中任意一个字段都可实现强缓存策略,当两个字段同时存在时,max-age优先级会高于Expires。如果命中了强缓存浏览器控制台的http状态码仍旧是200。...可以理解为,没有强缓存,但是会有协商缓存协商缓存如果设置了no-cache,以及max-age(max-age=0为立即过期)过期了,这么着就命中了协商缓存,此时浏览器向服务器端请求,服务器端返回304...,即缓存有效,使用缓存数据;如果返回200,即缓存失效,使用服务器端最新数据除此之外,两者还有以下一些区别:强缓存其实更多的发生在浏览器端,而 协商缓存更多的在服务器端在浏览器强制刷新的情况下,强缓存不会生效

    38040

    浏览器缓存

    文章目录[隐藏] 强缓存 协商缓存缓存缓存时,客户端直接从缓训中获取数据。没有时,从服务端取数据。...协商缓存可以叫做对比缓存,请求时会带上资源标识符去到服务端进行比对,如果资源没有任何修改,则客户端直接缓存。...注意:协商缓存和强缓存的重要区别,强缓存下的客户端请求服务器接收不到,协商缓存下的客户端请求服务端时可以接受到只是做在服务端进行数据对比,判断资源是否更新; 协商缓存与强缓存的区别 强缓存都会访问本地缓存直接验证看是否过期...但协商缓存本地缓存会被忽略,会去请求服务器验证资源是否更新,如果没更新才继续使用本地缓存,此时返回的是 304,这就是协商缓存。协商缓存主要包括 Last-Modified 和 Etag。...,在使用缓存前,不管缓存资源是否过期了,都必须进行校验 客户端提醒缓存服务器,在使用缓存前,不管缓存资源是否过期了,都必须进行校验 max-age=[秒] 秒 如果缓存资源的缓存时间值小于指定的时间值,

    77330

    节点缓存VS浏览器缓存

    浏览器缓存策略: 强制缓存:当浏览器向服务器发起请求时,服务器会将缓存规则放入HTTP响应报文的HTTP头中和请求结果一起返回给浏览器,控制强制缓存的字段分别是Expires和Cache-Control...协商缓存:强制缓存失效后,浏览器携带缓存标识向服务器发起请求,一般是使用 if-modified-since/Last-Modified 和 if-none-match/Etag 由服务器来决定浏览器缓存的资源是否可以使用...一般情况下,节点缓存浏览器缓存是独立的,并不会相互影响。但腾讯云在特定平台的特定场景下,两者会出现关联性。...问题描述: 客户反馈将域名vodtest.xiaobli.xyz “全部文件不缓存” 的策略删除后,访问如下url文件,CDN节点和浏览器均会缓存住,不符合预期。...如下所示,该域名无浏览器缓存过期配置。在这种场景下,浏览器缓存多久取决于访问某资源时,服务器响应的Cache-Control 或Expires。

    1.3K81

    浏览器缓存

    浏览器缓存缓存位置Service WorkerService Worker 是运行在浏览器背后的独立线程,一般可以用来实现缓存功能。 注意点:必须是 HTTPS。...Service Worker 缓存不同于其他机制,它可以让我们自由控制缓存哪些文件、如何匹配缓存、如何读取缓存,并且缓存是持续性的。...Memory Cache内存中的缓存,主要是页面上已经下载的样式、脚本、图片等已经抓取到的资源。 注意点: 读取内存中的数据肯定比磁盘快,读取高效。 缓存持续性很短,会随着进程的释放而释放。...关闭页面内存中的缓存也就释放了。Disk Cache是存储在硬盘中的缓存读取速度相对慢点。注意点: 比起 Memory Cache 胜在容量和存储时效性上。...否则返回304,告诉浏览器直接用缓存

    11120

    PHP读取大文件【php

    php操作文件一般是file、file_get_contents等此类函数。但是如果处理大文件,这些函数受限于性能和内存,可能就不是那么理想了!...对于PHP操作文件,我们尝试以下几种方式 一、file file 函数是一次性将所有内容读入内存,而 php 为了防止一些写的比较糟糕的程序占用太多的内存而导致系统内存不足,使服务器出现宕机,所以默认情况下限制只能最大使用内存..."; //读取文件中的前10个字符输出,指针位置发生了变化 -echo ftell($fp)."..."; //读取110到120字节数位置的字符串,读取后指针的位置为120 -fseek($fp,-10,SEEK_END); //又将指针移动到倒数10个字节位置处 -echo fread(...$i)[0];#读取一行 $a++; } } 参考文章: https://www.jb51.net/article/160564.htm

    5.9K30

    web浏览器缓存机制_网站利用浏览器缓存

    浏览器缓存机制之一(经典缓存) 因为在接手的项目中用到过比较新的HTML5应用缓存,也用到了经典的缓存如设置max-age,Etag之类,而之前一直就是在用着没有去深究其中原理。...1.关于浏览器缓存 记得去年看《HTTP权威指南》的时候,有一章是专门讲浏览器缓存的,一年时间过得太快,逝去的时光还真是如同人群中消失的好姑娘,眼看她嫁给别人。...我这里把浏览器缓存分为经典的浏览器缓存(以下简称为经典缓存)和HTML5应用缓存这两类。...3.用户行为与缓存 用户行为也会影响浏览器缓存机制。...4.参考资料 浏览器缓存机制 《HTTP权威指南》 Is Chrome ignoring Control-Cache: max-age?

    90720

    浏览器缓存机制浅析--HTTP缓存

    非HTTP协议定义缓存 浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制(如: Expires; Cache-control等)。...例如在IE我们可以使用 no-cache 来防止点击“后退”按钮时页面资源从缓存加载,但在 Firefox 中,需要使用 no-store 才能防止历史回退时浏览器不从缓存中去读取数据,故我们在响应报头加上如下组合值即可做兼容处理...如图所示: image.png 我们现在要说的问题是,如果客户端向服务器发了请求,那么是否意味着一定要读取回该资源的整个实体内容呢?...无法被浏览器缓存的请求: HTTP信息头中包含Cache-Control:no-cache,pragma:no-cache(HTTP1.0),或Cache-Control:max-age=0等告诉浏览器不用缓存的请求...,也不包含Cache-Control/Expires的请求无法被缓存 用户行为与缓存 浏览器缓存行为还有用户的行为有关!!!

    95020

    php缓存技术

    1、全页面静态化缓存 也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。...php文件中,文件名包含商品id来建一个唯一标示;下一次有人想查看这个商品时,首 先就直接调这个文件里面的信息,而不用再去数据库查询;其实缓存文件中缓存的就是一个php数组之类; Ecmall商城系统里面就用了这种方式.../configure --enable-cache --enable-disk-cache --enable-mem-cache 8、php APC缓存扩展 Php有一个APC缓存扩展,windows下面为...php_apc.dll,需要先加载这个模块,然后是在php.ini里面进行配置: [apc]       extension=php_apc.dll       apc.rfc1867 = on      ...;       每个PHP页面所吃掉的最大内存,默认8M

    3.6K60

    浏览器缓存机制

    什么是浏览器缓存 浏览器通常会将常用资源缓存在个人电脑的磁盘和内存中。 缓存是性能优化中简单高效的一种优化方式,它可以显著减少网络传输所带来的损耗。...对于一个数据请求来说,可以分为发起网络请求、后端处理、浏览器响应三个步骤。浏览器缓存可以在第一和第三个步骤汇总优化性能。...Service Worker的缓存浏览器其他内建的缓存机制不同,它可以让我们自由决定缓存哪些文件、如何匹配缓存、如何读取缓存,并且缓存是持续性的。...读取内存中的缓存比磁盘中的要快,但是缓存持续性很短,会随着进程的释放而释放。 计算机中的内存比磁盘小很多,所以无法存储大量数据。...Disk Cache Disk Cache就是存储在硬盘中的缓存,虽然读取速度比较慢,但优点在于容量和存储时效性。 在所有浏览器缓存中,Disk Cache覆盖面基本是最大的。

    74420
    领券