CodeIgniter会话类在Chrome中不起作用

ime*_*sks 8 cookies session google-chrome codeigniter

我已经在codeigniter项目中创建了一个登录系统,它在Firefox中工作正常,但在Chrome,数据获取和会话设置中不起作用,但是当此代码将控制重定向到admin/dashboard时,我们再次检查会话数据.如果会话数据不存在那么代码将重定向用户再次登录............我的代码在下面,我不知道在codeigniter中这个会话/ cookie有什么问题.

        $data = array(
             'user_id' => $user->id,
             'name' => $user->name,
             'user_type' => $user->type,
             'username' => $user->username,
             'is_logged_in' => true
        );

        $this->session->set_userdata($data);
        //echo "user ".$this->session->userdata("username"); exit;
        redirect("admin/dashboard", "location"); 
Run Code Online (Sandbox Code Playgroud)

我已经搜索了很多,但没有人在这种情况下工作,就像在配置文件中更改" cookie_domain "但没有发生任何事情....

Cod*_*ank 18

我也面临这种情况并通过将会话到期时间增加到一天来修复它.

UPDATE

为什么它通过延长会话到期而起作用?


出现此问题是由于用户和网络服务器位置的时区之间的差异,例如我住在巴基斯坦,比美国时区提前10小时,我的服务器在美国.我在巴基斯坦时间17/10/2012 14:00请求该页面.美国的时间是17/10/2012 4:00,因为网络服务器在美国,会话到期时间设置为2小时,服务器发送的cookie设置为在17/10/2012 6:00到期.现在,浏览器会与您当地的电脑时间进行交互,并且它会在17/10/2012 14:00获得时间,因此它会删除cookie,或者您的cookie始终会根据您的请求进行刷新.因此最好将会话期限设置为1天,因为新西兰和美国之间的最大时区差异是17小时(我不确定差异可能是我错了).因此,您的cookie至少会保持7小时