Последняя версия Firefox 63.0 как для Mac, так и для Windows каким-то образом сломала логин, который я создал для административного бэкенда моего сайта электронной коммерции.Раньше это работало нормально.Я использую PHP.
При успешном входе в систему с действительными учетными данными переменная $_SESSION['admin_logged_in']
установлена на TRUE
, и я правильно вошел в систему и перенаправлен на начальную страницу.Однако, когда я пытаюсь перейти на любую другую страницу внутри сайта администратора, я сразу же выхожу из системы, как будто переменная сеанса внезапно теряется.
На каждой отдельной странице в самом начале, включая начальную страницу,У меня есть сценарий с краткой проверкой входа в систему, который выглядит следующим образом:
<?php
//start session
session_start() ;
//check user is logged in
if (($_SESSION['admin_logged_in'] !== TRUE) || (!isset($_SESSION['admin_logged_in']))) {
header("location: /index.php") ;
$_SESSION['admin_reason'] = "illegal" ;
exit;
}
?>
Возможно, я думал, что это ошибка в Firefox, однако недавно я также вышел из системы, хотя обычно после навигации по нескольким страницам, последней версией Safari на iOS 12 и MacOS Mojave.
В настоящее время работает и никаких проблем на Opera или Chrome (протестировано на Mac).
Я попытался очистить кэш в Firefox инастройка параметров конфиденциальности, но не повезло.Я говорил с моими веб-хостами, и они не знают о каких-либо проблемах или изменениях на стороне сервера.
Но если бы была проблема с кодом PHP и переменными сеанса, так как это обрабатывается на стороне сервера, предположительно, этоне работает ни в одном браузере, а также не работал ранее?
Благодарен за любые предложения.
Мне удалось решить эту проблему, см. Мой ответ ниже.