不同文件夹的会话管理

时间:2014-09-11 14:16:34

标签: php session

我正在开发一个包含两个不同门户(管理员和成员)的应用程序。 http://localhost/app/用于成员登录,http://localhost/app/admin用于管理员登录。

当我登录成员和管理员门户网站时,两者都可以正常工作,但如果我从一个门户网站注销,则另一个门户网站会自动注销。

我检查了在/tmp/目录中创建的会话文件是否存储了单个文件中的两个门户的会话信息,这导致了上述问题。我认为解决方法是将两个门户的会话信息保存在不同的目录中。我搜索了很多,但没有得到任何解决方案:(

请帮忙。提前谢谢!

2 个答案:

答案 0 :(得分:0)

您可以单独销毁会话元素,而不是仅调用session_destroy();

例如,对管理员使用$_SESSION['logged_a'],为用户使用$_SESSION['logged_u']

然后,根据您退出的位置,执行unset($_SESSION['logged_a'])unset($_SESSION['logged_u'])

我希望这有帮助!祝你好运!

答案 1 :(得分:0)

PHP会话在每个域的基础上工作,因为他们使用cookie。如果您希望为每个目录设置单独的登录系统,则应用程序必须处理该目录。一种工作方法是将会话ID存储在数据库中,同时引用会话登录到的门户。当用户注销一个门户而不是销毁会话时,请删除显示会话已登录到该门户的记录。