PHP разные идентификаторы сессии в одном домене

Я создал простой сессионный класс, который обрабатывает сессии.
Однако я сталкиваюсь с большими проблемами с session_id.

Небольшое примечание: это случается просто хорошо в течение нескольких недель. и вдруг он перестает работать

Что случилось:

http://domain1.com/framework/start/

Имеет следующий идентификатор сеанса: svplf2tln1j05n75jbokcmhfo3

http://domain1.com/framework/login/

Имеет следующий идентификатор сеанса: njlqg0jomo00r560bp6k0pje55

Это странно.

Но важно знать мои настройки:

            ///######## IF A SESSION COOKIE SHOULD BE SET
if(self::$setsessioncookie === true){
///######## SETTINGS ARRAY
$SessionSettings = array(
'session.cookie_lifetime'       =>          self::$limit,           /// **** LIFETIME OF THE SESSION COOKIE (in seconds)
///'session.cookie_path'           =>          self::$path,         /// **** THE DOMAIN FOR WHERE THE COOKIE WILL WORK. (single /  for all paths on the domain.)
'session.cookie_domain'         =>          self::$domain,          /// **** DEFINE THE DOMAIN NAME
'session.cookie_secure'         =>          self::$secure,          /// **** ONLY BY SECURE CONNECTIONS
'session.cookie_httponly'       =>          self::$httponly         /// **** INDICATE THAT THE SESSION COOKIE IS AVAILABLE THROUGH HTTP PROTOCOLS ONLY (not by Javascript)
);
///########==================================================
///######## SET THE SESSION COOKIE PARAMETERS
///########==================================================
///######## RUN THROUGH ALL SETTINGS
foreach($SessionSettings as $Option => $Setting){
///######## IF THE OPTION IS NOT EMPTY
if($Setting !== NULL){
///######## SET THE SETTING
ini_set($Option, $Setting);
}
}

Как видите, я прокомментировал:

'session.cookie_path'           =>          self::$path

Так что не следует ограничиваться только одним путем.
Но проблема все еще возникает.

Перед этим я установил сессионный cookie:

///########==================================================
///######## STORING THE SESSION ID IN A COOKIE
///########==================================================
setcookie(
self::$SessionName,             /// **** SET THE COOKIE NAME
session_id(),                   /// **** SET THE COOKIE CONTENTS
(time() + self::$limit)         /// **** MAX DURATION OF THE COOKIE LIFETIME
);
///########==================================================

Или я должен сделать это перед установкой ini_set??

Небольшое обновление:
У меня установлено расширение для веб-разработчика FireFox, и когда я нажимаю: «Удалить файлы cookie пути», система выходит из системы и позволяет мне войти в систему должным образом.

Это может означать, что путь был установлен? Но я это закомментировал ???

Может быть, я должен установить путь, но указать глубину ??
например ini_set('session.cookie_path', 'http://domain1.com/*')?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]