Заголовки для вывода изображения PNG, чтобы убедиться, что оно кэшируется в браузере?
У меня есть изображения (PNG), которые генерируются динамически и будут встроены в веб-сайты и форумы. Когда изображение публикуется на очень загруженной странице, существует множество подключений к сервису для чего-то, что не часто меняется. Я хочу указать браузеру, как долго его кэшировать.
Итак, какие заголовки мне нужны? В настоящее время у меня есть:
Cache-Control: max-age=86400
Content-Type: image/png
Похоже, что браузер не кэширует изображение (оно составляет около 20-30 кб). Что еще было бы необходимо?
Редактировать:
Это пример изображения, у меня уже есть URL-адрес с расширением .png
:
https://images.carspending.com/sigimg/5734/user/honda-accord-2-4i-executive-tourer_medium.png
3 answers
Последнее, что сработало, было:
header('Pragma: public');
header('Cache-Control: max-age=86400');
header('Expires: '. gmdate('D, d M Y H:i:s \G\M\T', time() + 86400));
header('Content-Type: image/png');
Теперь браузер не запрашивает изображение при загрузке страницы со встроенным изображением.
Убедитесь, что вы также добавили public следующим образом:
header('Cache-Control: max-age=86400, public');
Прочитайте это также, это очень полезно.
Заголовок Expires
должен помочь.
header('Expires: '. gmdate('D, d M Y H:i:s \G\M\T', time() + 86400));