当在Chrome中打开“继续你离开的地方”设置时关闭窗口关闭会话

时间:2016-07-19 07:52:57

标签: php session

我的应用程序在浏览器关闭时或通过单击注销按钮注销。但是当在chrome或firefox中打开“继续你离开的地方”时,会话不会被清除。浏览器保存会话值以应用其设置。由于我的应用程序包含敏感信息,我需要将其清除。我不想在选项卡关闭时注销。有谁能建议这样做的方法?我已经实现了计时器注销,当标签保持不活动状态超过5分钟时就会执行。它还会在浏览器关闭时注销。 “这里的问题是,在浏览器中打开”继续停止的位置“设置时,它不会在浏览器关闭时退出”。我只是想根据我的最后一点提出建议。

1 个答案:

答案 0 :(得分:0)

如果您不希望在其他标签处于活动状态时自动注销简单的标签关闭,则没有直接的方法。因为所有客户端脚本只能在其选项卡中进行控制,所以它们不能也不应该释放自己并控制浏览器窗口本身。

另一种方法是反而注销用户,当他没有任何标签活动时,比方说,30秒:

1)添加一个在每个页面上加载的脚本,它会定期向服务器发出ajax请求,说明该客户端仍处于活动状态。

2)使服务器端脚本监听这些请求并记住上次在当前会话中收到的信息。

3)最后,在session_start()之后的任何地方都包含一个脚本,该脚本将检查上次刷新时间,并且如果自上次刷新请求以来经过了太多时间,则可以清除会话(因为这意味着客户端没有活动的选项卡)一段时间...或连接问题,不能完美)。