Сповідь : на сайтах, які я підтримую, є різні правила керування кешем, в основному на основі конфігурації сервера за замовчуванням з подальшими рекомендаціями з плагінів Page Speed & Y-Slow Firefox та вигляд мережевих ресурсів у програмі Google Tracer Speed . Кеш-контроль встановлюється приватним / загальнодоступним залежно від того, що вони говорять, заголовки ETag / Last-модифіковані лише за умови, що Y-Slow припускає, що щось не так, і Vary-Accept-Encoding здається необхідним, коли вручну gziping файли для Amazon CloudFront.
При перегляді матеріалу про різні варіанти та те, що вони там роблять, здається, суперечлива інформація, правила щодо непрацездатних проксі та конфігурацій культового культу . Будь-яка офіційна інформація, що надається згаданими вище інструментами аналізу, є досить недоступною, оскільки вона розглядає кожну тему окремо, а не як єдину стратегію (тому немає перехресних посилань на методики).
Наприклад, мабуть, немає сенсу, що інструменти аналізу швидкості оцінюють сайт із ETag таким же, як і сайт без них, якщо вони призначені для допомоги у кешуванні.
Які жорсткі та швидкі правила для стратегії кеш-кегу кеш-керування?
Редагувати:
Посилання через статтю Джеффа Етвуд пояснює Кешування в чудовій глибині.
Для запису, хоча тут є жорсткі та швидкі правила:
Якщо файл стискається за допомогою GZIP тощо - використовуйте "кеш-контроль: приватний", як проксі може повернути стиснуту версію клієнту, який не підтримує його (хоча кеш браузера буде містити файли, позначені таким чином). Також не забудьте включити "Варіант: Прийняти-кодування", щоб сказати, що він стисливий.
Використовувати Last-Modified у поєднанні з ETag - використання ременів і підтяжок надає обидва валідатори, тоді як ETag заснований на вмісті файлу, а не на часі модифікації, використовуючи обидві обкладинки всіх баз. ПРИМІТКА: AOL's PageTest чомусь застосував карт-бланш проти ETags. Якщо ви використовуєте Apache на декількох серверах для розміщення одного вмісту, тоді видаліть неявно оголошений inode з ETags, виключивши його з директиви FileETag (тобто "FileETag MTime Size"), якщо ви справді не використовуєте ту саму живу файлову систему.
Куди можна, використовуйте "кеш-контроль: громадський" - це означає, що проксі-сервери (і кеш браузера) повернуть ваш вміст, навіть якщо на іншій сторінці потрібна HTTP-аутентифікація тощо.