На этом сайте у меня есть ситуация, когда пользователю может потребоваться войти в систему в течение очень длительного периода времени (дни, недели, в некоторых случаях месяцы). Проблема в том, что я вижу в журналах сервера, что они часто оказываются не вошли в систему, так что попытка подключения приводит к перенаправлению на страницу входа.
Кстати, это клиент, который автоматически подключается каждую минуту.
Похоже, что они выходят из системы при определенных обстоятельствах (Отключение питания? Компьютер переходит в спящий режим? Некоторое другое прерывание сети?). Обычно пользователь устанавливает соединение с сервером каждую минуту, поэтому он должен иметь возможность оставаться в системе, да? Я оставил соединение работающим в течение нескольких дней и оставался подключенным все время.
Мои подходящие настройки сеанса:
session.cache_expire 180
session.cookie_lifetime 0
session.gc_maxlifetime 1440
session.use_cookies On
session.use_only_cookies Off
Проверка состояния входа в систему выполняется Zend Framework Zend_Auth
. Если я останусь в системе более одного дня, это будет означать, что у меня нет ни предела cache_expire, ни времени gc_maxlifetime, верно?
Единственный способ, которым я мог смоделировать выход из системы, который, кажется, происходит, - это установить соединение (установить сеанс), а затем оставить компьютер на ночь отключенным. Когда я снова подключился к Интернету на следующий день, и клиент попытался продолжить подключение (это происходит автоматически), я обнаружил, что вышел из системы.
Итак, мой вопрос (ы).
Это моя оценка того, почему клиенты могут выйти из системы
правильно?
Если это так (или даже если нет), что я могу сделать, чтобы предотвратить эти выходы из системы? Значительно расширить различные настройки контроля времени сеанса?