


PHP Правильно ли удалять ФАЙЛ сессии при выходе пользователя ?
У меня вечная сессия с кастомной папкой до тех пор пока ползователь не нажмет кнопку выйти так вот если пользователь выходит сам то сессия удаляется из папки но если он очистит куки то сессия тоже слетит а файл уже останется и как его удалить рано или поздно папка засрется неиспользуемыми сессиями divisior с кастомными папками не работает и вообще не удаляет нифига что то ? создавать таблицу с базы данными сессий ? И их датами и так удалять или как проще может ? Можно определять если файл сесси не используется ,
И еще обязательно ли вызывать session destroy после удаления файла сессии потому что после удаления файла сесси и так авторизция слетает она там в памяти не хранятся вызывать надо session_regenerate_id(); session_destroy(); ?
Можно как то при создании сессии указать через какое время она идалится из кастомной папки ?
Видимо надо писать скрипт php который будет считывать циклом из mysql сессии получать их даты если они истекли то удалять только так ? И это скрипт тупо вызывать переодично ?
session_start();
//echo "Logout Session ID " .session_id();
$dfile= 'sess_' .session_id();
session_start();
unlink('./sessions/' .$dfile);
header("Location: ../index.php");
exit();
обычно срок сессии определяется в несколько часов, и если даже пользователь не вышел из программы, то все равно завершается, вдруг он забыл или у него комп завис, а он отдыхать уехал на месяц. Зачем грузить сервер?
Поэтому можно задать условие проверки папки с сессиями, те которые сроком более суток удалять. И при каждом входе любого пользователя проверять папку на наличие таких файлов.
Там время от времени срабатывает очистка устаревших сессий
Как часто она срабатывает, можно в php.ini настроить