会话已自动销毁(随机)

时间:2018-07-30 10:32:17

标签: php codeigniter

我有一个网站,其中有很多子域+我们的主要网站位于同一域(该网站使用Codeigniter编码)。

例如:

sub.domain.com
sub1.domain.com
sub2.domain.com
domain.com

我们的主域用作客户系统,子域是客户可以预订的地方。

我们在5分钟到1个小时后会出现自动注销的巨大问题。

我们当前的设置如下:

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'sessionfield';   
$config['sess_expiration'] = 2592000;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;

$config['cookie_domain']    = '.domain.com'; //real domain removed for security
$config['cookie_path']      = '/';
$config['cookie_secure']    = FALSE;
$config['cookie_httponly']  = FALSE;

if($subdomain){
    $config['encryption_key'] = '[key 1 goes here]'; // real key removed for security
}else{
    $config['encryption_key'] = '[key 2 goes here]'; // real key removed for security
}

我试图搜索几乎所有关于我们那里的解决方案(更改cookie_domain,更改子域与主域的加密密钥等),但是没有一个解决方案起作用。

所以我的问题是,有人对这种自动注销问题有任何经验吗?

期待您的来信。

1 个答案:

答案 0 :(得分:0)

在分布式基础架构上,最好将memcached用作会话保存和更改。在将会话保存到共享资源上时,它更加健壮且非冗余。