【发布时间】:2015-08-06 14:27:50
【问题描述】:
我想每次都在没有缓存的情况下在每个浏览器中加载我的网站,所以我尝试通过 HTMl 和 PHP 从这里引导来完成它` How to control web page caching, across all browsers?
PHP
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.
HTML
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
在结果中我可以看到在响应中所有参数设置正确
但我仍然可以看到网站正在从缓存中加载旧的 img
当我启用浏览器“打开开发者工具时禁用缓存”功能时,我真的可以看到图像是如何从服务器正常加载的。
我的问题是如何避免这种情况?并确保每次都从服务器加载所有内容?
此外,我无法通过 htaccess 进行操作,因为我需要有类似 http://url.com/?noCache=true 的东西,如果它是其他任何东西,它应该从缓存中正常加载
【问题讨论】:
-
你能在
incognito或private模式下试试吗? -
图像直接从 Apache 提供,在这种情况下不会调用您的 php 代码。
-
您提供的标题不会影响图像。只有在像 " /> 这样的每个图像上附加一个随机数才有可能
-
我知道这个解决方案,但这是唯一为什么要这样做?我想也有一些全球解决方案
-
请解释为什么投反对票?这个问题有什么问题?
标签: javascript php html caching