Выбор ответа Middle Кеширование обновлено

Зачем нужен заголовок Vary

Вопрос

Сервер отдаёт по одному URL русскую или английскую страницу в зависимости от Accept-Language. Что нужно добавить в ответ, чтобы CDN не перепутал версии?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Vary: Accept-Language. Vary говорит кешу хранить отдельную копию на каждое значение указанного заголовка запроса.

Варианты ответа

  1. Content-Language: ru
  2. Cache-Control: immutable
  3. Vary: Accept-Languageправильный ответ
  4. ETag с языком внутри

Разбор

Vary говорит кешу хранить отдельную копию на каждое значение указанного заголовка запроса. Content-Language только описывает ответ, ключ кеша он не меняет. immutable про отказ от ревалидации. ETag участвует в проверке версии, но не в выборе, какую копию отдать.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.