【问题标题】:Old session showing in Chrome旧会话显示在 Chrome 中
【发布时间】:2013-04-29 19:51:47
【问题描述】:

我在 Drupal 中开发了一个网站,它会引导您浏览多个页面来帮助制定计划。这个想法是,如果有人在制定计划时转移到站点的另一部分,然后又回到计划中,他们的位置将被保存在会话中。

在 Firefox 和 IE 中一切正常,但在 Chrome 中却不行(大多数时候)。

当它起作用时,是因为您使用该网站的链接返回计划。但是,如果您在浏览器中使用后退按钮,您最终会进入旧版本的会话。如果您点击刷新,则会加载正确的页面。

为什么要加载这个较旧的会话?特别是因为有一个更新的会话?这是加载当前部分内容的脚本。

    $output = array(
        "current" => $_SESSION["order"]["current"],
        "nodes" => $nodes
    );
    $node = node_load($current);
    $nodeView = node_view($node, 'full');

非常感谢您的帮助。

【问题讨论】:

  • 清除性能管理部分的drupal缓存
  • 谢谢。但这没有任何效果。我不认为它与drupal有任何关系。
  • 也许你可以在你的客户端实现一个小的 ajax 轮询并检查服务器是否有更新版本的计划。如果有,请通知用户。

标签: php ajax google-chrome session drupal-7


【解决方案1】:

问题是因为 Chrome 似乎缓存了所有内容。为了解决这个问题,我添加了

<?php  
    header("Cache-Control: no-cache, no-store, must-revalidate"); // HTTP/1.1
?>

我不得不使用“no-store”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    • 2016-04-13
    • 2019-04-13
    • 2012-02-25
    相关资源
    最近更新 更多