2013-03-16 103 views
0

我有一个很奇怪的问题。当用户登录到网站时,我的用户数据存储在会话中。这是正常工作,但有时当我在我的网站上浏览时,Codeigniter将我自动排除在外。Codeigniter有时会自动清除会话数据

以前任何人都有这个问题,并知道一个解决方案?

+1

如果您在您的网站上使用ajax,这是一个非常常见和已知的并发问题。 [这里是关于Github的一些讨论。](https://github.com/EllisLab/CodeIgniter/pull/1900) – 2013-03-18 06:52:29

回答

0

检查会话时间.....

的application/config/config.php文件

$config['sess_expiration']  = 7200; 

你想会话持续的秒数。默认值是2小时(7200秒)。如果您想获得永久的session值设置为零:0

有关详细信息...

http://ellislab.com/codeigniter/user-guide/libraries/sessions.html

+0

我同意德尔文保罗,也建议将会话存储在数据库中。它会更好地工作。 欲了解更多信息,请阅读http://ellislab.com/codeigniter/user-guide/libraries/sessions.html – 2013-03-18 15:36:53

+0

我已经尝试了上面的一段代码,但仍然会破坏我的会话数据 – user1899573 2013-03-20 15:31:25

0

喜请在系统中进行以下更改/库/ sessions.php文件。

public $sess_encrypt_cookie; 
public $sess_use_database; 
public $sess_table_name; 
public $sess_expiration; 
public $sess_expire_on_close; 
public $sess_match_ip; 
public $sess_match_useragent; 
public $sess_cookie_name; 
public $cookie_prefix; 
public $cookie_path; 
public $cookie_domain; 
public $cookie_secure; 
public $sess_time_to_update; 
public $encryption_key; 
public $flashdata_key; 
public $time_reference; 
public $gc_probability; 
public $userdata; 
public $CI; 
public $now; 

我有同样的问题自定义会话会在一段时间后自动销毁。