【问题标题】:Query caching when user goes back用户返回时查询缓存
【发布时间】:2013-04-21 06:20:37
【问题描述】:

我有一个查询 MySql 数据库的页面,然后将结果显示为 HTML。假设数据库发生变化,当用户返回页面时,数据库的新变化是否会反映出来? 我担心用户第一次访问该页面时获得的数据在他们返回时没有改变。有没有办法在用户访问页面时防止数据被缓存。

【问题讨论】:

  • 不仅是数据库,而且 chrome 后退按钮(即至少 chrome)都有一个特殊功能,它甚至可以为您提供 最后一个 ajax 请求的缓存,所以您可能不会除非您禁用该选项,否则甚至无法使用它(我忽略这是否可能)

标签: php mysql caching cookies


【解决方案1】:

如果您的页面没有指定缓存行为,那么浏览器将对其是否应该缓存该页面进行最佳猜测。在某些情况下,当用户点击“返回”时,浏览器会显示相同的页面,而在其他情况下可能不会。

您应该明确告诉浏览器不要缓存页面并重新验证它。您可以使用下面的代码来实现:

header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

【讨论】:

    猜你喜欢
    • 2013-03-22
    • 1970-01-01
    • 2019-12-02
    • 1970-01-01
    • 2019-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-13
    相关资源
    最近更新 更多