如何强制浏览器使用 php 刷新缓存?

Posted

技术标签:

【中文标题】如何强制浏览器使用 php 刷新缓存?【英文标题】:How can I force browser to refresh the cache with php? 【发布时间】:2021-06-18 12:40:17 【问题描述】:

我是一名初学者网络“开发人员”。我正在建造我们的狗窝。 几天来我一直面临缓存问题。我发现php filemtime可以完成这项工作,我只想问,如果我这样放置PHP代码,它会工作吗? 如果没有,你能帮我吗,怎么做?

<link rel="stylesheet" type="text/css" href="../../../styles/basic.css?v=<?php filemtime('../../../styles/basic.css') ?>"/>

【问题讨论】:

是的,这可能会奏效。这是一种非常基本的资产版本控制方法,但我认为它可以解决问题。 【参考方案1】:

典型的网络服务器,如 Apache,使用文件修改时间来通知网络浏览器请求页面的年龄,允许浏览器采取适当的缓存操作。对于动态网页,实际的 PHP 脚本


解决方案

我们可以采取两种可能的方法来解决这个问题:使用 HTML 元标记,以及使用 HTTP 标头

HTML 元标记

<meta http-equiv="expires" content="Mon, 26 Jul 1997 05:00:00 GMT"/>
<meta http-equiv="pragma" content="no-cache" />

HTTP 标头

<?php
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Pragma: no-cache');
?>

【讨论】:

我使用了这些元标记,但是它们不起作用,如果我像您写的那样设置过期日期,它会起作用吗?

以上是关于如何强制浏览器使用 php 刷新缓存?的主要内容,如果未能解决你的问题,请参考以下文章

Chrome浏览器如何强制刷新

谷歌浏览器,调试时,页面的刷新,强制刷新+清空缓存 操作详情。

mac chrome 强制刷新浏览器缓存

[Web前端] mac chrome 浏览器强制刷新,清除浏览器缓存

如何强制浏览器重新缓存网站? [复制]

强制刷新的 HTML 链接?