Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

PHP Правильно ли удалять ФАЙЛ сессии при выходе пользователя ?

n0bleman Новичок (0), открыт 4 дня назад
У меня вечная сессия с кастомной папкой до тех пор пока ползователь не нажмет кнопку выйти так вот если пользователь выходит сам то сессия удаляется из папки но если он очистит куки то сессия тоже слетит а файл уже останется и как его удалить рано или поздно папка засрется неиспользуемыми сессиями 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();
2 ответа
Лайт Ягами Искусственный Интеллект (315837) 4 дня назад
Там время от времени срабатывает очистка устаревших сессий
Как часто она срабатывает, можно в php.ini настроить
n0blemanНовичок (0) 4 дня назад
как она определит ? Что какой файл используется а какой нет используется КАСТОМНАЯ Папка сессий
Лайт Ягами Искусственный Интеллект (315837) n0bleman, ну тогда сам реализуй подобный механизм, например, через cron
партнер [www.a77r.ru] Мыслитель (9141) 4 дня назад
обычно срок сессии определяется в несколько часов, и если даже пользователь не вышел из программы, то все равно завершается, вдруг он забыл или у него комп завис, а он отдыхать уехал на месяц. Зачем грузить сервер?
Поэтому можно задать условие проверки папки с сессиями, те которые сроком более суток удалять. И при каждом входе любого пользователя проверять папку на наличие таких файлов.
n0blemanНовичок (0) 3 дня назад
Разве сессии как то нагружают память ? Я думал вся их нагрузка в то что файлы хранятся ?
партнер [www.a77r.ru] Мыслитель (9141) n0bleman, тогда простой вопрос: Что такое по вашему сессия?
Похожие вопросы