php Сессия. Как связаны куки и сессия. Можно ли использовать механизм сессий в PHP в браузере, где куки не поддерживаются

Сессия — это механизм для сохранения информации на разных веб-страницах для идентификации пользователей при навигации по сайту или приложению. Сессия PHP представляет собой способ хранения информации в переменных сессии, которые могут быть использованы для аутентификации на нескольких веб-страницах. В отличие от куков, информация сессии не хранится на компьютере пользователя. Вместо этого сессия создает файл на сервере во временном каталоге.
Просмотреть содержимое сессии можно в суперглобальном массиве $_SESSION.
Идентификатор сессии - переменная, название по умолчанию PHPSESSID, нужен для идентификации браузера клиента. Эту переменную можно передать пользователю в куках или POST/GET запросом.
PHP использует оба варианта.
За это отвечают две настройки в php.ini:
session.use_cookies - если равно 1, то PHP передает идентификатор в куках, если 0 - то нет.
session.use_trans_sid если равно 1, то PHP передает его, добавляя к URL и формам, если 0 - то нет.
Менять эти и другие параметры сессий можно так же, как и другие настройки PHP - в файле php.ini, а так же с помощью команды ini_set() или в файлах настройки веб-сервера.
Если включена только опция session.use_cookies, то при старте сессии (при каждом вызове session_start()) клиенту устанавливается кука. Браузер, если поддерживает куки, при каждом следующем запросе эту куку возвращает и PHP имеет идентификатор сессии.
Если включена опция session.use_trans_sid, то кука не выставляется. После того, как скрипт выполняет свою работу, и страница полностью сформирована, PHP просматривает ее всю и дописывает к каждой ссылке и к каждой форме передачу идентификатора сессии. Это выглядит примерно так:

<a href="/index.php">Index</a>

превращается в

<a href="/index.php?PHPSESSID=9ebca8bd62c830d3e79272b4f585ff8f">Index</a>

а к формам добавляется скрытое поле

<input type="hidden" name="PHPSESSID" value="00196c1c1a02e4c37ac04f921f4a5eec" />



Источники

Key Words for FKN + antitotal forum (CS VSU):