销毁不同服务器上的会话

时间:2014-06-23 11:24:19

标签: php session

我已经建立了一个可以正常工作的基本登录系统。

我在所有网页上使用session_start()。我用$_SESSION = 'user';

设置了会话变量

我用session_start(); session_destroy();

摧毁它

我的问题是:

如果我在学校服务器上编写此代码,则可以正常工作。但是,如果我在自己的服务器上尝试,我可以登录,但我无法正确销毁会话。当我点击“注销”时并且被发送到另一个页面,我可以单击返回到登录所需页面,就像我没有登录一样。当我在学校服务器上执行此操作时,这不会发生。

有不同版本的PHP可以干扰基本的session_destroy代码吗?

2 个答案:

答案 0 :(得分:0)

首先关闭session_start();会话开始,session_destroy();会将其销毁 您不需要在所有页面上启动会话。您可以在/或登录循环后执行此操作。至于破坏会话,你应该在你注销时使用它。当然,在您这样做之后,您应该将用户重定向到主页或其他地方(由您决定)。

我建议您阅读this related issue有关特定网页上的会话和用户限制/访问权限。
希望这对你有所帮助。

附:注销后尝试使用Ctrl + F5刷新页面(您可能已在浏览器中缓存了副本)

答案 1 :(得分:-1)

您不能,因为会话存储在您的文件系统上,因此您在服务器上有两个相同会话的实例。

这种情况的一个不错的选择是将会话存储在数据库中,因此会话管理将是集中的。