Как долго длится моя сессия?

Может кто-нибудь, пожалуйста, скажите мне, как долго мой сеанс будет длиться от данных ниже? - Я не знаю, что мне скажет

session.auto_start  Off Off
session.bug_compat_42   Off Off
session.bug_compat_warn On  On
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   no value    no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  1000    1000
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 5   5
session.hash_function   0   0
session.name    PHPSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    files   files
session.save_path   /var/lib/php/session    /var/lib/php/session
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    Off Off
session.use_trans_sid   0   0

Ответ 1

В общем вы можете сказать session.gc_maxlifetime определяет максимальное время жизни с момента последнего изменения ваших данных сеанса (не в последний раз session_start был вызван!). Но обработка сеансов PHP немного сложнее.

Поскольку данные сеанса удаляются сборщиком мусора, который вызывается только session_start с вероятностью session.gc_probability, разделенный session.gc_divisor. Значения по умолчанию: 1 и 100, поэтому сборщик мусора запускается только в 1% от всех вызовов session_start. Это означает, что даже если сеанс уже рассчитан теоретически (данные сеанса были изменены больше, чем session.gc_maxlifetime секунд назад), данные сеанса могут использоваться дольше.

В связи с этим я рекомендую вам реализовать собственный механизм тайм-аута сеанса. См. мой ответ" Как мне закончить сеанс PHP через 30 минут? для получения более подробной информации.

Ответ 2

Это тот. Сеанс будет длиться 1440 секунд (24 минуты).

session.gc_maxlifetime  1440    1440

Ответ 4

Если session.cookie_lifetime равно 0, cookie сеанса живет до тех пор, пока браузер не закроется.

EDIT. Другие отметили настройку session.gc_maxlifetime. Когда происходит сбор мусора сеанса, сборщик мусора удалит любые данные сеанса, к которым не было доступа более, чем session.gc_maxlifetime секунды. Чтобы установить время ожидания для файла cookie сеанса, вызовите session_set_cookie_params() или задайте параметр session.cookie_lifetime PHP. Если этот параметр больше, чем session.gc_maxlifetime, вы должны увеличить session.gc_maxlifetime до значения, которое больше или равно времени жизни файла cookie, чтобы гарантировать, что ваши сеансы не будут действовать.