Пример идентичных файлов cookie сеанса (в том же каталоге):
показывает 2 сеансовых файла cookie с одинаковым номером.
У меня на обоих сайтах есть код, в котором говорится, что они оба называются PHPSESSID, и они, кажется, переплетаются друг с другом (если я закрою один сеанс, другой сайт также будет отключен). ), но они разделены.
Я пробовал менять все настройки, которые только мог придумать. session_name() показывает одно и то же для обоих сайтов.
Чтобы внести ясность, я хочу разделить сеанс между двумя поддоменами.
Код: Выделить всё
CI4:
$session = session();
$ses_data = [
'app' => 'ci4',
'logged_in' => TRUE
];
$session->set($ses_data);
с содержимым: __ci_last_regenerate|i:1719492561;_ci_previous_url|s:44:"http://codeigniter.xxxxx-php5 .com/login/auth";app|s:3:"ci4";logged_in|b:1;
(xxxxx-php5.com — домен верхнего уровня)
Вышел на поле:
Код: Выделить всё
session_start();
$_SESSION['app'] = 'homerolled';
$_SESSION['logged_in'] = TRUE;
с содержимым: app|s:10:"homerolled";logged_in|b:1;
Оба сеанса записываются в одну и ту же папку на сервере. Я свел к минимуму код, необходимый для воспроизведения результатов. Несмотря на имена сеансов (в папке), они оба создают PHPSESSID при вызове session_name(). Я попытался установить для сеанса $cookieName (в ci4) значение sess_ и попробовал оставить пустым. Пустой выдает ошибку, а sess_ заставляет другую систему вообще не распознавать файл cookie сеанса (он вообще генерирует новый UUID).
Подробнее здесь: https://stackoverflow.com/questions/786 ... subdomains