У меня есть сайт с несколькими поддоменами, где уничтожение сеанса на поддомене не уничтожает сеанс основного домена. Вот сценарий:
Когда я вхожу через example.com
, он проверяет, присутствует ли какой-либо поддомен с данными для входа, и перенаправляет на панель управления с помощью subdomain.example.com
. Теперь, если я выхожу из этого субдомена, он выходит из меня и уничтожает сеанс субдомена, но если я удаляю субдомен из URL и перезагружаю страницу, он возвращает меня на панель управления.
Я следовал Это , но нет успеха
Вот мой выход из системы. php page
session_start();
$baseHostname = getCurrentBaseUrl();
if (isset($_COOKIE['PHPSESSID'])) {
setcookie("PHPSESSID", "", time()-3600, "/", $baseHostname);
}
session_destroy();
if(isset($_SESSION[SESSION_PREFIX."user"]))
unset($_SESSION[SESSION_PREFIX."user"]);
redirect("loginForm.php");
loginForm.php
имеет условие, которое проверяет, существует ли сессия, если да, а затем перенаправляет на панель мониторинга.
Также я установил ini_set('session.cookie_domain', $baseHostname);
в своем заголовке, поэтому используйте одинаковые сеансовые куки для всех доменов.
Спасибо!