29 мая 2012 г., 10:33 отzappinguser1383147

Срок действия документа PHP истек

Я делаю некоторое PHP-кодирование, если "Назад" Нажав кнопку в браузере, я получаю следующую ошибку:

Document Expired
This document is no longer available.

Какой код я могу реализовать, чтобы удовлетворить эту ситуацию

Ответы на вопрос(8)

06 окт. 2012 г., 06:25 отSanjeev Chauhan

Установите заголовок Cache-Control на главной странице.

<?php
header('Cache-Control: max-age=900');
?>
08 дек. 2014 г., 02:18 отT.Todua

Add this in the start of PHP codes:

ini_set('session.cache_limiter','public');
session_cache_limiter(false);
03 июл. 2014 г., 15:38 отGokul Shinde

Я прошел через ту же проблему. На странице, на которую я хочу вернуться, были опубликованы значения формы, поэтому при нажатии на ссылку «Назад» отображалась ошибка «Истек срок действия документа». Смотрите пример-

Есть три страницы, page1.php, page2.php и page3.php. Теперь я отправляю некоторую форму из page1.php в page2.php, используя метод POST. Из page2.php я нажал на ссылку page3.php.

Теперь я хочу вернуться на page2.php из page3.php. Но у page2.php есть значения формы, отправленные с использованием метода POST, и когда я захожу на page2.php из page3.php, в браузере отображается ошибка & quot; Docuemnt Expired & quot ;.

Так что я использовалGET методinstead изPOST, Поэтому, когда вы вернетесь на page2.php, тогда не будет POST-значений формы, и страница загрузится правильно. Кроме того, так как значения формы присутствуют в URL, страница будет загружаться как положено.

04 февр. 2017 г., 11:51 отBsienn

Эта проблема возникнет по следующим двум сценариям:

Implementing searching with Post Redirecting back to a page that was posted previously.

Есть 2 способа преодолеть эту проблему легко без какого-либо взлома.

Заsearch form не использоватьpost метод, вместо этого используйте метод get, и все работает нормально.

Если вам действительно необходимо скрыть входные данные формы по какой-либо причине и вы хотите использовать метод post, то ссылку / действие, которое вызывает перенаправление на другую страницу, сделайте его перенаправленным через JavaScript.

location.replace('http://example.com/page2');

Это удалит реферальный URL и вызовет новый http-запрос. Теперь нажатие кнопки «Назад» в браузере не приведет к истечению срока действия документа.

16 сент. 2015 г., 07:26 отKabir Hossain

Перейдите на сервер php.ini и изменить это

session.cache_limiter = nocache

Как

 session.cache_limiter = public

Проблема будет решена. Я решил свою проблему с этим.

04 февр. 2017 г., 11:03 от3 revs, 3 users 61%Senthil Kumar Muppidathi

Using Post/Redirect/Get rule you can avoid this.

Эта проблема возникнет из-за следующего:

Let say I have example1.php, example2.php and example3.php I am posting some values from example1.php to example2.php then I did all the DB stuff as per my need and rendered the page (Not Redirected - Just posted and the page got rendered). After that I have redirected the page from example2.php to example3.php. Now if you click browser back Document will Expire.

To Avoid this we can post the values from example1.php to example2.php and redirect the user to some other page immediately.

ЭтоPost / Redirect / Get шаблон, которому можно следовать, чтобы избежать истечения срока действия документа. Это также помогает избежать избыточной записи в БД.

01 дек. 2017 г., 11:49 отPavan Patil

просто поместите эту строку на своей странице.

<?php 
header("Cache-Control: max-age=300, must-revalidate"); 
?>
29 мая 2012 г., 10:34 отzapping

Проверьте, не отключено ли кэширование в заголовке, например

<HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

ВАШ ОТВЕТ НА ВОПРОС