Я динамически генерирую страницу с помощью PHP. Я использую выходную строку сайта для создания Etag и проверяю, чтобы отправить 304 (не изменено), когда сайт не изменился с момента последнего запроса.
Сейчас я также пытаюсь улучшить кэширование изображений на своем сайте. На каждом сайте размещено от 6 до 30 изображений (jpg, 70 - 200 КБ). Я хочу, чтобы пользователь перезагрузил изображение, если его содержимое изменилось. Я думаю об этом, добавив строку запроса к URL-адресу каждого изображения:
src="'.$files[$x].'?id='.md5_file($files[$x]).'"
Это слишком сложно и создает слишком большую нагрузку на каждый запрос или оно того стоит? Как я уже сказал: я генерирую эти md5-хэши для каждого изображения, а затем один md5-хеш для выходной строки, чтобы использовать его в качестве Etag для каждого запроса.
Это заголовки ответов из моих изображений:
HTTP/1.1 304 Not Modified
Date: Mon, 10 Dec 2012 08:56:49 GMT
Server: Apache
Connection: keep-alive, Keep-Alive
Keep-Alive: timeout=1, max=99
ETag: "360f-4d02f5fcfc34f"
Expires: Mon, 07 Jan 2013 08:56:49 GMT
Cache-Control: max-age=2419200, must-revalidate
Большое тебе спасибо!