Varnish: отправка заголовка "если не соответствует" заголовку?

Я хотел бы использовать кеширование etag непосредственно в моем приложении / проверить eTag в моем приложении. Как можно направить заголовок "If-None-Match" на серверные? Похоже, что Varnish по умолчанию вырезает этот заголовок.

2 ответа

Решение

Ладно, решил: Varnish не удаляет заголовок If-None-Match. Это было только мое веб-приложение, доставленное из кэша, в то время как запросы все еще поступали. Chrome обслуживал старую версию страницы. КАШЕЛЬ. КАШЕЛЬ. КАШЕЛЬ.

Вы можете переписать его в другой заголовок, о котором не знает лак, а затем прочитать его в своем бэкэнде.

В верхней части vcl_recv попробуйте:

set req.http.X-If-None-Match-Previously = req.http.If-None-Match;

а затем прочитайте заголовок X-If-None-Match-Previously в вашем приложении.

Я не уверен, как это будет взаимодействовать с вашим кэшированием, но оно будет передавать данные заголовка, если Varnish удалит их из своих внутренних запросов.

Другие вопросы по тегам