Продление времени жизни сессии в PHP


Продление времени жизни сессии в PHP Если Вы уже более-менее хорошо ориентируетесь в PHP, то знаете, какая разница между чистыми cookie и сессиями. И Вы должны знать, что время жизни сессии ограничено. Однако, это бывает не всегда удобно. И в этой статье я расскажу о том, как продлить время жизни сессии в PHP. Для чего требуется продливать время жизни сессии в PHP? Самый частая причина - это продлить время жизни авторизации пользователя, которая построена на сессиях. Как правило, по умолчанию, сессия хранится 15 минут. Соответственно, через 15 минут бездействия пользователя, он автоматически выходит из системы, и ему приходится авторизовываться заново. Самый простой вариант продлить сессию - это изменить файл php.ini (переменная session.gc_maxlifetime), однако, едва ли у Вас имеется такая возможность (если, конечно, Вы не хозяин сервера). Поэтому самым лучшим вариантом будет добавить в файл .htaccess такую строку: php_value session.gc_maxlifetime 3600 Здесь мы изменили значение переменной session.gc_maxlifetime на 3600 секунд. Теперь у нас сессия будет храниться ровно 1 час. Если Вы поставите 0, то сессия будет храниться неограниченное время, что я крайне не рекомендую Вам делать, разве что только на локальном сервере. Так как это удобно при создании и отладке сайта. Но не забывайте, что все файлы сессии хранятся на сервере. В результате, их может накопиться такое количество, что уже просто не хватит места (конечно, при условии большой посещаемости). Вдобавок, не забывайте: чем меньше время жизни сессии - тем выше безопасность. Ещё один момент. Некоторые хостинг-провайдеры запрещают управлять файлом .htaccess. Если так, то меняйте хостера, потому что любой уважающий себя хостинг-провайдер позволяет изменять .htaccess. Теперь Вы знаете, как снять ограничение на время жизни сессии в PHP и надеюсь, что Ваш сайт станет таким образом гораздо удобнее и для Вас, и для Ваших пользователей.