У меня есть страница с редактируемой таблицей. Мне нужно, чтобы пользователи могли редактировать это, а затем отправлять их изменения. Все работает хорошо, пока я не перенаправляю их на одну страницу с новым контентом (что касается их изменений). Однако они видят старый контент.
Если я нажму ctrl + f5 в браузере, они будут обновляться. Мне было интересно, есть ли способ заставить это. Это мой php-код, который не помогает принудительно обновлять:
header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate'); header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Pragma: no-cache'); header( 'Location: http://www.bamozir.com/en/mtl-en/recent/general-info/cost#edit' );
Eugen Rieck Solution отлично подходит для firefox, chrome и safari. Но не в IE и Opera. Любая идея, как это исправить?
Что ALLWAYS работает: Предполагая, что ваш URL-адрес: http: //my.server/my/page? A = b & c = d, вы перенаправляете на http: //my.server/my/page? A = b & c = d & nocache = 1234567890 с 1234567890, являющимся большое случайное число
Вы должны установить контроль кеша и истечение срока действия на странице, которую вы хотите принудительно обновить. Установив это перед перенаправлением, вы сообщаете браузеру, чтобы он не кэшировал страницу, с которой вы перенаправляете.
Используйте этот заголовок, чтобы использовать обновление:
Refresh: 0;url=http://www.bamozir.com/en/mtl-en/recent/general-info/cost#edit
Подробнее об этой теме читайте здесь: HTTP-заголовок «Обновить»