加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php静态文件返回304技巧分享

发布时间:2020-12-13 02:19:51 所属栏目:PHP教程 来源:网络整理
导读:《php静态文件返回304技巧分享》要点: 本文介绍了php静态文件返回304技巧分享,希望对您有用。如果有疑问,可以联系我们。 PHP应用 有时一些静态文件(如图片)会由php输出,会发现哀求都是200,静态文件每次都去服务器上哀求太浪费资源了,这时如何让浏览器缓存

《php静态文件返回304技巧分享》要点:
本文介绍了php静态文件返回304技巧分享,希望对您有用。如果有疑问,可以联系我们。

PHP应用有时一些静态文件(如图片)会由php输出,会发现哀求都是200,静态文件每次都去服务器上哀求太浪费资源了,这时如何让浏览器缓存图片呢?就需要我们在php中输出304了.

我们可以利用php中的 HTTP_IF_MODIFIED_SINCE 结合etag来干这事.Etag没有明确规定的格式,我们可以用文件修改时间的md5值,代码如下:

代码如下:

private function _addEtag($file) {
??? $last_modified_time = filemtime($file);
??? $etag = md5_file($file);
??? // always send headers
??? header("Last-Modified: ".gmdate("D,d M Y H:i:s",$last_modified_time)." GMT");
??? header("Etag: $etag");
??? // exit if not modified
??? if (@strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) == $last_modified_time ||
??? @trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) {
??????? header("HTTP/1.1 304 Not Modified");
??????? exit;
??? }
}

在代码中可以在静态文件(如图片)输出之前挪用即可.

编程之家培训学院每天发布《php静态文件返回304技巧分享》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读