CodeIgniter在server tmp文件夹中生成了太多的会话文件

问题描述 投票:0回答:2

我不知道为什么但我的CodeIgniter应用程序在server tmp文件夹中创建了太多的ci_sessions文件。像1000会话文件一样min。并且似乎没有删除旧的会话文件

我正在使用此设置

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 0;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 1000;
$config['sess_regenerate_destroy'] = TRUE;

如何摆脱这个问题?

enter image description here

php codeigniter
2个回答
0
投票

添加此代码

ini_set('session.save_path',realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/tmp'));
ini_set('session.gc_probability', 1);

0
投票

在你的php.ini中添加这个

session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440

同样在您的codeigniter配置文件中,检查您是否已启用regenerate_destroy和expiration。

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = ‘mysession';
$config['sess_expiration'] = (60 * 60); 
$config['sess_save_path'] = FCPATH . "sessions";
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = TRUE;

基本上,gc_probability默认设置为0,并且无法删除这些文件。因此更改为1会自动删除文件。

© www.soinside.com 2019 - 2024. All rights reserved.