Как настроить Varnish для условного игнорирования файлов cookie на основе заголовка ответа Vary?
Я использую Varnish 3 для кэширования ответов от веб-приложения, которое использует Edge Side Includes (ESI).
Обычно есть два типа ответов от конечных точек ESI:
- некоторые являются специфичными для аутентификации, поэтому ответы используют
Vary: Cookie, Accept-Encoding
- некоторые кэшируются для всех пользователей независимо от файлов cookie, таким образом, отвечая
Vary: Accept-Encoding
(без изменения по cookie)
Все запросы содержат Cookie
заголовок с различными куки. Запросы без Cookie
заголовок ответил с Set-Cookie
, Обратите внимание, что это не так __
куки-файлы с префиксом, например, из Google Analytics - это куки-файлы, установленные устаревшим приложением, и у меня нет средств изменить это поведение.
Есть ли способ * настроить Varnish 3, чтобы помнить, что ответы от соответствующих конечных точек ESI не зависят от cookie, таким образом, будущие запросы должны игнорировать Cookie
заголовок и использовать кэшированный ответ вместо получения нового от бэкэнда?
(*) кроме жесткого кодирования URI в конфигурацию Varnish, т.е. я ищу способ для Varnish уважать отсутствие файлов cookieVary
заголовок для запросов, которые содержат куки.