【问题标题】:Why does my session info get cleared when clearing history?为什么清除历史记录时我的会话信息会被清除?
【发布时间】:2015-06-28 03:31:00
【问题描述】:

我正在使用 CodeIgniter,并像以下示例一样设置会话:

$this->session->set_userdata('psLoggedInUser', $UserN );

在开发过程中,我想清除 chache(例如),然后运行“clean”。但我想保留我的登录会话。例如,我在其他选项卡上也有 gmail 和 linkedin,我不想被注销。

但是,当我清除浏览器历史记录以确保未清除登录会话时,我发现自己离开了我的开发站点。但我仍然登录 gmail。

为什么会这样?这是否意味着 gmail 使用不同的机制来跟踪登录会话?

【问题讨论】:

  • 嗨 itsols,你得到它的答案了吗? bcs 我也遇到了同样的情况(在我最近的问题中是这样)。
  • 不。恐怕我没有。事实上,我什至没有关注这个问题,因为它已经有一段时间了。但是,如果您确实找到了答案,请告诉我或在此处发布您的答案。谢谢!

标签: codeigniter session-variables browser-cache browser-history


【解决方案1】:
  1. Cookie 和缓存是有区别的, 缓存仅清除图像文件和下载的数据,但不清除 cookie,您的会话将始终保存在 cookie 部分中

例如。当您想使用 alt+ctrl+del 从 chrome 清除浏览器缓存时,您可以看到多个选项,用于缓存其不同的选择选项和用于 cookie 的不同

  1. 有关 Gmail 的概念请选择以下链接:

https://superuser.com/questions/462973/how-can-i-stop-gmail-from-keeping-me-logged-in-after-i-close-the-browser

希望对您有所帮助。

【讨论】:

    【解决方案2】:

    您可以覆盖或设置配置 项目动态。如果你只是看 在
    $config ['sess_expire_on_close'] = TRUE;
    是否进行会话 时自动过期 浏览器窗口关闭。 如果用户没有检查,则将其设置为 true 记住我复选框。和 用户关闭后会话将过期 浏览器。 如果他检查记住我 复选框,设置
    $config ['sess_expire_on_close'] to FALSE 喜欢

    `if($this->input->post('remember')) $this->config->set_item('sess_expire_on_close','0'); //'` 
     remember is
    

    复选框名称。 现在会话不会过期 浏览器关闭。注意:此解决方案 也在 Opera、Mozilla、 Chrome 和 ie9

    【讨论】:

    • 感谢您的回答。但是,我认为有一个小误解。让我澄清一下...当我关闭窗口并返回时,我的会话处于活动状态。但是,当我清除浏览器的缓存时,我的 gmail 会话仍然存在,但我的站点会话丢失了。这是我的担心:/
    猜你喜欢
    • 1970-01-01
    • 2012-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多