缓存文件合并工具下载,uc缓存变成好多小文件

访客4年前黑客文章1082

这篇文章主要介绍了PHP文件生成的图片无法使用CDN缓存的解决 *** ,这里的PHP生成图片是指src地址是一个PHP文件的图片,如果不做CDN,服务器的压力会非常大,本文就讲解了如何加进CDN的 *** ,需要的朋友可以参考下  今天发现线上有个问题,线上一个图片域名,在前端已经加了CDN缓存,不落缓存,则用PHP动态实现图片缩放,但经PHP处理过的图片输出后,每次都要从后端读取,后端服务器压力瞬间增加,经分析,PHP中没有作304的处理,  HTTP的原理是这样的,每次请求到服务器后,服务端检测有没有修改,如没有修改,可以直接返回一个304的状态码,这样就用客户端的缓存了,CDN的原理就是如此,如果设置了304,就会将相应的URL进行缓存起来;  相关代码如下:   代码如下:  //检测有没改变  if (isset($_SERVER['HTTP_IF_NONE_MATCH'])){  $etag = $_SERVER['HTTP_IF_NONE_MATCH'];  if (md5($this-image) === $etag){  header(HTTP/1.1 304 Not Modified);  exit;  }  }  header(Last-Modified: . gmdate(D, d M Y H:i:s, strtotime('2011-1-1')). GMT);  //输出etag头  header('etag:' . md5($this-image));  header('Cache-Control:max-age=2592000');echo $this-image;  其中http头HTTP_IF_NONE_MATCH,一般是服务器返回的对某一URL的标识,一般用MD5计算,这样我们检测MD5值对不对,相同就可以返回304了;  PS:  刚开始抓了半天包,只看到服务端返回的Etag标签,没看到客户端的http头中If-None-Match,害得在fastcgi.conf.default 中加入如下代码:  复制代码 代码如下:  fastcgi_param CACHE_ETAG $http_if_none_match;  一打印$_SERVER,根本就没有CACHE_ETAG这个变量,看来nginx都会将相关的HTTP头放到$_SERVER变量中,也加深了http协议的了解

相关文章

清空的微信聊天记录如何恢复?没想到这么简单

操作方式 01 起首打开我们的微信,点击我的,进入界面。 02 然后点击设置,进入设置界面。 03 然后点击设置界面的倒数第二个的帮忙与...

味德麻辣烫加盟品牌为何倍受大众欢迎?放下怀疑就能拥有成功

味德麻辣烫加盟品牌为何倍受大众欢迎?放下怀疑就能拥有成功

餐饮行业作为一个大行业,是不缺少优秀的品牌的,也不缺少创业者,所以你要想要餐饮行业中闯出自己的一片天地,那就要有一个有特色的品牌加盟加上你能够对品牌经营得当,这样你才能够长久的发展下去。味德麻辣烫加盟...

去香港买什么化妆品便宜又好?代购达人教你选

去香港买什么化妆品便宜又好?代购达人教你选

想必大家去香港第一件事就是买买买吧! 香港简直就是女人们的购物天堂。虽然香港现在的汇率不怎么好了,但是一样可以去买到很便宜的东西。下面推荐几款香港热款的护肤品化妆品吧。 先来说说面膜 水光...

多国研究表明新冠病毒下山桩在中国之外传播早于武汉

  (抗击新冠肺炎)多国研究表明新冠病毒在中国之外传播早于武汉出现疫情   中新社北京11月19日电 综合消息:据路透社和意大利《晚邮报》等多家媒体报道,意大利米兰国家肿瘤研究所(INT)近日发表的...

服务器被攻击了怎么办

现在流传的攻击方式有3种,DDOS攻击、、CC攻击、ARP攻击等。是属于哪种呢.然后尽快关闭服务器,然后查毒,修改登陆密码等如果还是不行就只能是用安全防御。 说实话,游戏服务器经常会被攻击,哪些原因造...

青岛:本轮疫情系医院聚集性疫情-青岛疫情源头在

自打青岛市出現了诊断病案以后大伙儿对青岛市就很关心,很想要知道的便是青岛市肺炎疫情根源在哪里,怎么会突然冒出新冠肺炎诊断病人呢,据最新动态报导青岛市:这轮肺炎疫情系医院门诊聚集性疫情,临时清除清除小区...