Автоматическая генерация миниатюрных изображений - IMAGE RESIZER

Кеширование


При передаче превью браузеру скрипт передаёт HTTP заголовок Last-Modified (дата последнего изменения). При следующем запросе браузер отправляет серверу заголовок «If-Modified-Since» и если дата последнего изменения превью совпадает, скрипт возвращает заголовок «304 Not Modified» без изображения. Если время последнего изменения отличается (или last modified header не настроен) — скрипт возвращает заголовок «200 OK» и передаёт изображение. То есть вместо повторной загрузки файла, браузер получает всего лишь заголовок 304. Это экономия трафика, ресурсов и времени!

Как ещё можно оптимизировать кеширование?

Передадим браузеру HTTP заголовок Cache-Control с указанием времени актуальности файла. Например - неделя. В этом случае браузер загрузит изображение и неделю больше не будет пытаться загружать его или "спрашивать" об его изменениях.

Создадим файл .htaccess с таким содержанием:
Header set Cache-Control "max-age=604800, public"

Директива public позволяет абсолютно любым прокси-серверам осуществлять кэширование наравне с браузером.

604800 - это неделя в секундах, 172800 - 2 дня, 3600 - 1 час.

Firefox кеширует адреса с вопросительными знаками.
Но некоторые браузеры (Opera, Internet Explorer 6+, Safari) НЕ кешируют документы, если в адресе есть вопросительный знак, т.к считают их динамическими.
Прочьте наши рекомендации по изменению url.