Принудительно перезагрузить изображения (в img) при нажатии кнопки "Назад"

Есть блог, где я могу размещать изображения и ссылки, без сценариев. Я все еще хочу иметь динамический контент.

Моя идея: изображение без заголовков кэша и т. Д., Которое динамически генерируется моим собственным php-скриптом на стороне сервера. Это изображение ссылается на страницу на моем сервере, которая устанавливает cookie и выполняет javascript history.back(). Затем в следующий раз изображение загружается, это другое изображение.

Проблема в том, что браузеры не могут загрузить изображение снова после нажатия кнопки "Назад"...

Я установил следующие заголовки:

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.

Тем не менее, по какой-то причине, если изображение находится внутри тега, старая версия загружается из кэша при возврате.

Также я включил изображение на вторую страницу, так что браузер даже загрузил новую версию изображения, но когда я нажал кнопку "Назад", мне все еще представили старую версию...

Как заставить браузер снова загрузить изображение?

1 ответ

Один из способов сделать это - добавить число в конце источника изображения:

<img src="image.jpg?1" />

Если ваше последнее изображение с тем же именем image.jpg твой номер после? заставит браузер загрузить изображение

Так что, если ваше последнее изображение с таким же именем:

<img src="image.jpg?1" />

Вы должны изменить это на

<img src="image.jpg?2" />

Вы можете иметь случайный номер генератора и поставить его в конце src, так что каждый раз, когда ваш браузер начинает загружать ваше изображение

Другие вопросы по тегам