Я пытаюсь понять Cookies и сеансы профессионально, я знаю, что когда браузер вводит сервер, сервер «спрашивает» обозревателя «Вставить» себе куки с «phpsessid» в папку cookie браузера клиента. Теперь, когда у нас есть " phpsessid ", когда клиент входит на сервер, браузер отправляет серверу" phpsessid ", а сервер просматривает его папку tmp, и если у нас есть соответствие, поэтому он загружает все данные, которые у него есть для этого клиента, но я немного смущен со всем процессом.
Я буду благодарен, если кто-то может помочь мне разобраться в процессах создания сеансов и файлов cookie (что происходит «За кулисами»). Спасибо вам всем.
Давайте рассмотрим это:
Куки-файлы и сеансы – это оба способа сохранения состояния приложения между различными запросами, которые делает браузер. Благодаря им, например, вам не нужно входить в систему при каждом запросе страницы в StackOverflow .
Файлы cookie представляют собой небольшие биты данных (максимум 4 КБ), которые хранят данные в парах ключ = значение:
name=value; name2=value2
Они устанавливаются либо с помощью JavaScript , либо через сервер с использованием HTTP-заголовка .
Cookies имеют дату истечения срока годности, например, используя HTTP-заголовки:
Set-Cookie: name2=value2; Expires=Wed, 19 Jun 2021 10:18:14 GMT
Это заставило бы браузер установить cookie с именем name2
со значением value2
, срок действия которого истекает примерно через 9 лет.
Файлы cookie считаются крайне небезопасными, поскольку пользователь может легко манипулировать своим контентом. Вот почему вы всегда должны проверять данные cookie . Не думайте, что вы получаете из файла cookie – это то, что вы ожидаете.
Файлы cookie обычно используются для сохранения состояния входа в систему, где имя пользователя и специальный хэш отправляются из браузера, а сервер проверяет их на базе базы данных для утверждения доступа.
Файлы cookie также часто используются при создании сеансов .
Сессии несколько отличаются. Каждый пользователь получает идентификатор сеанса , который отправляется обратно на сервер для проверки либо cookie, либо переменной GET .
Сеансы обычно недолговечны, что делает их идеальными в сохранении временного состояния между приложениями. Сессии также прекращаются, как только пользователь закрыл свой браузер.
Сессии считаются более безопасными, чем файлы cookie, поскольку сами переменные хранятся на сервере . Вот как это работает:
$_SESSION
логарифме $_SESSION
. Если PHP не находит совпадения, он начнет новый сеанс и повторит шаги с 1-7.
Вы можете хранить конфиденциальную информацию в сеансе, потому что она хранится на сервере, но имейте в виду, что идентификатор сеанса все равно может быть украден, если пользователь, скажем, войдет в систему через небезопасный WiFi. (Злоумышленник может нюхать куки и устанавливать его как свой, он не увидит самих переменных, но сервер идентифицирует злоумышленника как пользователя).
В этом суть. Вы можете узнать больше о руководстве по PHP по обоим предметам.