关闭网络浏览器后,为什么智能手机中的php会话无法销毁?

时间:2013-08-28 07:46:04

标签: php session

我是一名新的PHP和jQuery移动用户,我正在使用它们来构建智能手机网络APP。目前,我正在使用sumsang S7526上的计算机和网络浏览器测试带有chrome的APP。

如果我没记错的话,我了解到如果浏览器关闭,可以自动销毁PHP会话。

我在homepage.php和login.php中使用了session_start()。我希望在用户登录然后关闭浏览器后,会话结束。这确实适用于我的chrome。但它不在我的sumsang上。

当我登录然后在我的Samsung上关闭浏览器,然后我重新打开浏览器时,我仍然在那里登录。会话ID就是之前的那个。

即使我试图关闭我的sumsang并再次启动它,会话ID仍然是相同的。那是为什么?

我再试一次。似乎我的三星浏览器默认保存会话cookie。包括phpsessid。我试图用$(window).close()获取浏览器关闭事件。但没有运气。是另一件事。

谢谢你们!

2 个答案:

答案 0 :(得分:0)

“会话”不存储在您的手机上 - 无论其名称如何。 它存储在Web服务器上。

浏览器仅向服务器发送会话ID - 使用不同的方法。服务器识别此ID以跟踪此uniq浏览器“会话”,并从存储的会话文件或其他会话存储方法中获取数据。

当您关闭浏览器时 - 服务器对此一无所知。 Ther是服务器上的一些进程 - 通常命名为GC(垃圾收集器),它们清理旧的过期会话文件。

请阅读Sessions reference

答案 1 :(得分:0)

默认情况下,PHP将会话ID存储在客户端的cookie中。尝试删除所有cookie(包括会话cookie)。

有关详细信息,请查看Session configuration options