Я использую PHP для создания веб-сайта, и я использую сессию для некоторых частей, таких как сохранение входа пользователя в систему и т. Д. Я устанавливаю время ожидания сеанса равным нулю, поэтому оно истекает при закрытии браузера.
Моя проблема в том, что когда веб-страница открывается в браузере в течение некоторого времени, а я ее не использую, сеанс истекает!
Я имею в виду, когда я не использую браузер (например, я редактирую свой код, или я ушел на обед и т. Д.), И через некоторое время я возвращаюсь к нему и обновляю его, иногда мне нужно войти в систему снова.
Это метод, который я использую, чтобы начать сеанс:
function StartSecureSession(bool $RememberMe = false) {
session_set_cookie_params(($RememberMe? 7*24*60*60 : 0), "/");
session_start();
session_regenerate_id(true);
}
Кто-нибудь может сказать мне, что происходит?
Спасибо
Примечание: я не знаю, имеет ли это значение, но я использую Ubuntu 14.04 и браузер Chromium
Используйте для установки максимального времени сеанса:
используйте следующий код в вашем файле конфигурации:
// each client should remember their session id for EXACTLY 10 hour
ini_set('session.gc_maxlifetime', 36000);
session_set_cookie_params(36000);
Напишите эти строки раньше session_start();
Или вы можете установить его в своем файле php.ini тоже.
Других решений пока нет …