PHP标头真的阻止客户端缓存吗?

时间:2013-10-03 22:33:08

标签: php ajax http caching http-headers

当我不希望客户端缓存结果时,我总是发送一堆标题。我最近读到它们并不总是适用于所有浏览器,并且附加随机数(或日期时间等)是唯一可靠的方法。 PHP标头真的阻止客户端缓存吗?我应该在URL中附加更改值吗?

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
header("Last-Modified: " . gmdate( "D, d M Y H:i:s" ) . "GMT" );
header('Cache-Control: no-store, no-cache, must-revalidate');
header("Pragma: no-cache" );
header('Cache-Control: post-check=0, pre-check=0', FALSE);

1 个答案:

答案 0 :(得分:0)

这不是您问题的答案,但可能有所帮助!

仔细检查您正在解决的问题是否可以重写,这样不仅缓存不会成为问题,而且还可以帮助您的程序更快地运行。

例如,

。假设我们有mypics.php,用户可以选择3种不同的图片:

pic1.jpg,pic2.jpg,pic3.jpg

以后你想要显示他们选择的照片(比如pic1.jpg)。

而不是将pic1.jpg复制到文件夹或数据库,并将其称为selectedPic.jpg,如果用户更改了pic,则会发生缓存问题,只需将链接存储到pic1.jpg

祝你好运!