Server Name
Все заметки
Практика

Когда браузер использует копию

Кеш хранит копию ответа, чтобы не загружать её заново при каждом обращении. Копия может находиться в браузере или на промежуточном сервере.

Свежесть и повторная проверка

Сервер может указать время свежести ответа через Cache-Control: max-age=3600. При подходящих условиях кеш использует такую копию в течение часа без повторного получения содержимого.

Когда нужна проверка, браузер может отправить сохранённый ETag в заголовке If-None-Match. Если представление не изменилось, сервер отвечает 304 Not Modified, и браузер использует прежнее тело.

no-cache не означает «не сохранять»

no-cache разрешает хранение, но требует проверки перед повторным использованием. no-store указывает не сохранять ответ. Для личных данных важно отдельно продумать политику браузерного и общего кеша.

Cache-Control: private, no-cache
ETag: "revision-7"

Почему после публикации видна старая версия

Причина может быть в браузерном кеше, CDN или сервис-воркере. Сначала сравните заголовки ответа и имя файла. Для статических ресурсов удобно менять имя при изменении содержимого, например site.a1b2.css.

Практический порядок проверки

  1. Посмотрите запрос во вкладке «Сеть» и убедитесь, откуда пришёл ответ.
  2. Временно отключите кеш в инструментах разработчика.
  3. Проверьте правила промежуточного кеширования и версию ресурсов.
  4. После исправления верните обычный режим и повторите проверку.