Я не могу заставить свою сессию отключиться. см. Ниже очень простой код. Кнопка запуска запускает сеанс, а ниже - идентификатор печати и время до таймаута. Я установил его на 5 секунд, который он отображает, но если вы ждете более 5 секунд и обновляете его, он покажет идентификатор и 5 секунд. Я что-то упустил?Сессия PHP не синхронизирована
<?php
echo <<<_END
<form method="post" action="">
<input type="hidden" name="start" value="yes"/>
<input type="submit" value="Start session"/>
</form>
_END;
if (isset($_POST['start']))
{
session_start();
ini_set('session.gc_maxlifetime', 5);
ini_set('gc_probability', 100);
ini_set('gc_divisor', 100);
}
echo session_id();
echo "<br>";
echo ini_get('session.gc_maxlifetime');
?>
Этот идентификатор сеанса - это установленный файл cookie, и отброшенный сеанс будет перезапущен с тем же идентификатором, если ваш браузер по-прежнему отправляет файл cookie. Попробуйте _store_ что-то в '$ _SESSION', и посмотрите, все ли он там. Кроме того, выполните 'ini_set'' before_ 'session_start'. – Wrikken