PHP Предотвращение возврата страницы после выхода из системы

У меня есть защищенная страница, которая показывает данные только для входа в систему, как только пользователь нажимает кнопку выхода из системы, она уничтожает данные сеанса и перенаправляет их на другую страницу. header('Location: login.php');

Теперь, как только страница будет перенаправлена ​​на login.php, я могу легко вернуться на страницу, которая была защищена, и может видеть всю информацию там и может оставаться на странице, пока я не обновляю браузер или не закрываю его.

На таких сайтах, как Gmail и многие другие, после входа в систему вы не можете вернуться на страницу назад. Как это можно реализовать? Благодарю.

Изменить: Извините, если его неясно, на защищенной странице есть несколько строк кода сверху, чтобы проверить, установлен ли сеанс или нет. если сеанс не установлен, он должен перенаправить на другую страницу. но проблема в том, что он не проверяет сеанс, если я нажимаю кнопку «Назад» в браузере.

Это может быть вызвано настройками кэширования по умолчанию вашего браузера / веб-сервера.

Всякий раз, когда пользователь посещает защищенную страницу, попробуйте отправить заголовки, чтобы предотвратить кеширование страницы:

 header('Cache-Control: no-cache, must-revalidate'); header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); 

Обычно это приводит к тому, что любые нажатия кнопки «назад» вызывают полную перезагрузку страницы, а не загрузку ее из кеша браузера.

Поместите это вверху защищенной страницы:

 //Probably caused by back button... Check if logged-in... if(!$_SESSION["usernameWhatever"]) { //Do not show protected data, redirect to login... header('Location: login.php'); } //Show protected data... 

Это в основном проверяет, если пользователь вошел в систему, если нет, перенаправляет на страницу входа …

Чтобы отключить кеширование страницы, поместите ее в head тег своей страницы:

 <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 

Эта проблема разрешения кода

 <?php echo("<script>location.href = './login.php';</script>"); ?>