Потеря сеанса и проблема перенаправления между поддоменом и доменомPhp

Кемеровские программисты php общаются здесь
Ответить
Гость
 Потеря сеанса и проблема перенаправления между поддоменом и доменом

Сообщение Гость »


У меня возникла проблема с управлением сеансом на моем веб-сайте https://www.progressiveai.org, у которого есть субдомен и основной домен: https://auth.progressiveai.org и https://www. Progressai.org. Когда пользователь входит в систему на https://auth.progressiveai.org, создается сеанс, но когда он переходит на https://www.progressiveai.org/Talk, он перенаправляется на https://auth.progressiveai. org, как если бы они не вошли в систему. Эта проблема сохраняется даже после очистки файлов cookie браузера и данных сайта. Как я могу обеспечить согласованное управление сеансами и предотвратить проблему перенаправления при перемещении между субдоменом и доменом?

Но когда я вхожу в режим инкогнито, вхожу в систему и перенаправляюсь на https://www.progressiveai.org/Talk, все работает нормально. Когда я захожу на Progressai.org/Talk, файлы cookie и данные сайта, удаляю их все и перехожу на https://auth.progressiveai.org, чтобы повторно войти в систему. Хочешь взглянуть на это! https://www.progressiveai.org/Talk перенаправляет меня на https://auth.progressiveai.org, как будто я никогда не входил в систему!

Вот PHP-код https://www.progressiveai.org/Talk:

А вот часть PHP-кода https://auth.progressiveai.org:

ini_set('session.cookie_domain', '.progressiveai.org'); сеанс_start(); if (isset($_SESSION['SESSION_EMAIL'])) { header("Местоположение: https://auth.progressiveai.org/redirect"); умереть(); } // Подключаем файл конфигурации вашей базы данных включить «../config.php»; // Замените этот запрос фактическим запросом к базе данных $stmt = mysqli_prepare($conn, "ВЫБРАТЬ * ИЗ пользователей ГДЕ email =?"); если ($stmt === ложь) { die("Ошибка: " . mysqli_error($conn)); } $email = ''; // Инициализируем переменную электронной почты // Привязываем параметр электронной почты к оператору mysqli_stmt_bind_param($stmt, "s", $email); // Выполняем оператор mysqli_stmt_execute($stmt); // Получаем набор результатов $result = mysqli_stmt_get_result($stmt); если ($результат) { // Извлекаем одну строку как ассоциативный массив $row = mysqli_fetch_assoc($result); mysqli_free_result ($ результат); } mysqli_stmt_close($stmt); ?> ... Если у вас есть какие-либо вопросы или сомнения по этому поводу, спросите меня. Заранее спасибо.
ПРИМЕЧАНИЕ. Ни одна из следующих статей, которые я нашел на Stack Overflow, не решила мою конкретную проблему:
Обмен переменными сеанса между несколькими субдоменами

Сеанс совместного использования PHP между несколькими субдоменами

Невозможно разделить сеансы PHP между субдоменом и основным

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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»