2012-01-28 91 views
1

我想设置我的会话,所以它会存储在数据库中,现在它只是这样做,但每次我尝试登录时,我不断生成新的会话ID并插入新记录,问题后,我改变了我的会话司机从nativedatabase我登录不工作,那么它的登录用户只是页面刷新后它的loged出来,这里IR我的配置:Kohana会话不断产生

return array(
    'native' => array(
     'name' => 'session_native', 
     'lifetime' => 43200, 
    ), 
    'cookie' => array(
     'name' => 'session_cookie', 
     'encrypted' => TRUE, 
     'lifetime' => 43200, 
    ), 
    'database' => array(
     'name' => 'session_database', 
     'encrypted' => TRUE, 
     'lifetime' => 43200, 
     'group' => 'default', 
     'table' => 'sessions', 
     'columns' => array(
      'session_id' => 'session_id', 
      'last_active' => 'last_active', 
      'contents' => 'contents' 
     ), 
     'gc' => 500, 
    ), 
); 

,我已经改变了这种line in my auth config from:

'session_type' => Session::$default, 

收件人:

'session_type' => 'database', 

回答

0

您还需要设置您的Cookie配置。

确保你的cookie域是正确的,这可能是登录后丢掉你的原因。

0

尝试在 'bootstrap.php中'

Cookie::$salt = '021004042012'; 

字符串是随机密钥添加此。

0

1)写入会话时发生的所有错误都是已记录,但未显示。
2)在Kohana 3中,您需要指定Cookie :: $ salt以使用任何会话(本地以及)。

(从Kohana 2升级时,对于我来说,搜索这两个事实相当困难)