防止PHP页面缓存

时间:2017-02-16 12:40:54

标签: php session caching

所以这个问题我一直都在使用会话。我试图描述我的确切问题,但后来我意识到用更简单的代码可以更容易地问它。

有没有办法,在每个页面加载时用PHP生成一个随机数?

我可以放置一个像echo rand(1,100)这样的简单线;但只有当我强制重新加载页面CTRL + SHIFT + R

时才会生成随机数

现在,我已经意识到,如果10-15秒过去并且我正常重新加载页面(F5),它确实给了我一个新的随机数,但如果我继续按F5,数字永远不会改变

这实际上是我的主要问题。我为我的项目做了一个简单的登录页面,一旦设置了会话并重新加载主页,只有当我强制重新加载页面时才会看到或识别会话。

进一步解释这一点。我创建了一个包含以下内容的文件:

header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Pragma: no-cache"); // HTTP/1.0
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
echo rand(1,100);

然而,只有当我强制用CTRL + SHIFT + R重新加载页面时,该数字才会在前15秒内重新生成。

解决

因此,在进一步研究之后,在这里和那里测试一些事情,我刚刚联系了我的主人来研究这个问题。原因是Varnish Cache。在我们禁用它之后,一切都按预期工作。感谢大家的建议和意见。

0 个答案:

没有答案