我刚刚注意到一个奇怪的行为。我在cms工作。如果我编辑一篇文章的标题并点击保存,它会立即在mysql数据库中更新。但是如果我点击"所有帖子"回到帖子列表,标题将不会更新。只有在我刷新页面后,新的标题才会显示出来。
气流是这样的。
"所有文章"页面->点击-> "编辑文章" ->点击-> "所有文章"
我猜浏览器没有从mysql数据库重新加载数据,因为他们认为它仍然是最新的。
这在Firefox 6.0和Chrome 13.0.782.112中发生,但在Mac OSX Lion 10.7.1的Safari 5.1中不会发生。
这是通常的行为吗?我该如何改变它?
我希望我的问题能被理解。
谢谢。
您必须告诉浏览器每次访问它时刷新页面。你可以通过设置下面的标题来实现:
header('Cache-Control: no-cache, must-revalidate, max-age=0');
遗憾的是,这没有帮助,尽管它可能只是针对我的问题。解决这个问题的方法是在我的。htaccess文件中放入以下内容:
<FilesMatch "'.php$">
Header unset Last-Modified
Header set Cache-Control "no-cache, must-revalidate"
</FilesMatch>
这样有意义吗,还是我应该改变一下?