Vary
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Заголовок ответа Vary
определяет, как сопоставить будущие заголовки запроса, чтобы решить, можно ли использовать кешированный ответ, а не запрашивать новый с исходного сервера. Он используется сервером для указания того, какие заголовки он использовал при выборе представления ресурса в алгоритме согласования контента.
Заголовок Vary
должен быть установлен для ответа 304
Not Modified
точно так же, как он был бы установлен для эквивалентного ответа 200
OK
.
Тип заголовка | Response header |
---|---|
Forbidden header name | no |
Syntax
Vary: * Vary: <header-name>, <header-name>, ...
Directives
- *
-
Каждый запрос должен рассматриваться как уникальный и не кешируемый. Лучший способ указать это - использовать
Cache-Control
:no-store
, который удобнее для чтения и также сигнализирует о том, что объект не должен храниться никогда. - <header-name>
-
Разделённый запятыми список имён заголовков, которые необходимо учитывать при принятии решения о том, можно ли использовать кешированный ответ.
Examples
Dynamic serving
When using the Vary: User-Agent
header, caching servers should consider the user agent when deciding whether to serve the page from cache. For example, if you are serving different content to mobile users, it can help you to avoid that a cache may mistakenly serve a desktop version of your site to your mobile users. It can help Google and other search engines to discover the mobile version of a page, and might also tell them that no Cloaking is intended.
Vary: User-Agent
Спецификации
Specification | Title |
---|---|
RFC 7231, раздел 7.1.4: Vary | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
Совместимость с браузерами
BCD tables only load in the browser