CodeIgniter генерирует слишком много файлов сессий в папке сервера tmp - PullRequest
0 голосов
/ 23 марта 2019

Я не знаю почему, но мое приложение CodeIgniter создает слишком много файлов ci_sessions в папке сервера tmp.как 1000 файлов сессии когда-либо мин.и, кажется, не удаляет старый файл сеанса

Я использую эти настройки

$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

Ответы [ 2 ]

0 голосов
/ 24 марта 2019

В вашем php.ini добавьте это

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

Также в своем файле конфигурации codeigniter проверьте, что вы включили регенерат_destroy и истечение срока действия.

$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, чтобы автоматически удалять файлы.

0 голосов
/ 24 марта 2019

Решение

Добавить этот код

ini_set('session.save_path',realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/tmp'));
ini_set('session.gc_probability', 1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...