Задать вопрос
@omichkun

Сколько будет жить cookie, если сессия не закончилась?

Добрый день.
Возник такой вопрос: если я возьму и установлю время жизни куки на +15 минут от текущего времени при входе на сайт, но пользователь будет находиться там дольше, как поведёт себя кука: умрет во время сессии, или при окончании сессии, или при следующем входе?
  • Вопрос задан
  • 8348 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@eandr_67
web-программист (*AMP, Go, JavaScript, вёрстка).
Важно не время нахождения пользователя на сайте, а время между двумя обращениями к серверу (это может быть и переход пользователя на другую страницу, и подгрузка контента AJAX'ом и т.п.).

Сессия устанавливает куку, содержащую id сессии в момент открытия страницы. После того, как страница предана браузеру, состояние сессии записывается в архив.

Если между обращениями к серверу прошло меньше 15 минут, то сервер возьмёт id сессии из куки и по этому id восстановит состояние сессии из архива. При этом время жизни куки передвинется на +15 минут от текущего.

Если же прошло больше 15 минут, то кука будет удалена и при следующем обращении к серверу он не сможет прочитать id сессии - потому автоматически создаст новую сессию с новым id и этот id будет записан во вновь созданную куку.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Вопрос не очень понятен. О какой куке речь? Как она связана с сессией?
О какой сессии речь? О сеансе работы с сайтом или о РНР сессии?
Если речь о той куке, в которой передается идентификатор сессии, то её вообще не надо руками трогать, оставив все параметры по умолчанию, в том числе и всремя жизни.
В этом случае время жизни куки будет выставлено в 0, и кука будет жить ровно столько, сколько длится сессия - не больше и не меньше.

Если все же залезть шаловливыми ручонками в настройки и выставить время жизни куки в 15 минут, то РНР сессия умрет вместе с кукой, разумеется.

Если остались вопросы, то сначала обязательно прочитать, что такое сессии
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽