在同一浏览器中使用两个网站时会出现会话问题


Sessions issue while using two sites at the same browser

我使用CodeIngniter框架构建了两个简单的web应用程序,并根据此链接添加登录页面。

一切都很好。但当我在同一个浏览器上使用这两个应用程序时,它们都被重定向到登录页面。

我根据文章使用了以下代码来设置、检查和销毁两个站点中的会话数据,

登录时,

$data = array(
    'userid' => 1,
    'name' => "Admin",
    'username' => "admin",
    'role' => "admin",
    'validated' => true
    );
$this->session->set_userdata($data);

在其他页面中,

private function check_isvalidated(){
    if(! $this->session->userdata('validated')){
        redirect('login');
    }
}

注销时,

public function logout(){
    $this->session->sess_destroy();
    redirect('login');
}

所以我想我需要在CodeIngniter会话中做一些事情,但我找不到我需要做什么。

任何帮助都将不胜感激。

提前谢谢。

当两个应用程序使用相同的会话标识符时,它将同时登录两个应用软件或不登录。因为cookie是在浏览器范围内共享的。你要做的是强制codeigniter为每个应用程序使用不同的cookiename,然后会话是分开的,你可以使用两次登录吗。