Пожалуйста, рассмотрите возможность отключения ETag's!
Рассмотрим следующие настройки:
Header unset ETag
FileETag None
Header set Cache-Control "max-age=2678400"
Первые два правила полностью отключают ETag, поэтому браузер вынужден прослушивать заголовок Cache-Control. Последнее правило указывает браузеру кэшировать файл 2678400 секунд или 1 месяц. Настройте параметры на то, что подходит вам больше всего. И примените эту конфигурацию к вашему каталогу, который содержит статические файлы (например, поместив файл .htaccess в этот каталог)
Необязательно, если вы используете несколько серверов для обслуживания статического контента и / или не уверены в том, когда эти серверы последний раз изменяли время, рассмотрите возможность использования:
Header unset Last-Modified
В нем указано, что Apache не должен обслуживать заголовки Last-Modified, поэтому браузеры могут прослушивать только заголовок max-age Cache-Control.
Эти настройки используются мной на многих сайтах hightraffic, и отключение заголовков ETag и Last-Modified, несомненно, помогло снизить трафик до одной пятой от того, что было раньше. Особенно Internet Explorer очень чувствителен к этим настройкам.
Имейте в виду: Отключение Last-Modified запретит браузерам запрашивать 304 содержимого, не измененных. По моему опыту это положительно, потому что у веб-сервера меньше запросов на обработку, а браузеры больше полагаются на настройки Cache-Control, которые вы обслуживаете. Но это может или не может вас устраивать. Некоторые браузеры будут пытаться проверять ресурсы каждые несколько минут, если вы предоставите им заголовок «Last-Modified», и поэтому я бы посоветовал полностью отключить его использование.
О, и если вы не уверены в своем кешировании; используйте http://www.redbot.org/ для тестирования ваших ресурсов, он быстро сообщает вам, что ваши заголовки означают для браузера, и как интерпретировать различные настройки управления кэшем, которые вы используете.