Запазен отговор с Vary: * винаги се проваля на нормалния тест за съвпадение на Vary. Проксито не може да заключи, че по-късна заявка има право на същото представяне само защото нейният URL и видимите заглавки изглеждат сходни.

Сравнете това с:

Vary: Accept-Encoding

Това назовава поле на заявката, което кешът може да сравни. Заместващият знак казва, че такова сравнение на заглавки е недостатъчно. Увеличаването на свежестта или размера на кеша не доставя липсващата информация за избор.

Разликата е между съхранение и повторно използване. Кешът може да пази информация, полезна за валидиране, но запазеният вариант със заместващ знак не се превръща в нормален съответстващ отговор, който да удовлетвори следващата заявка. Проксито обикновено трябва да се свърже с източника.

Накарайте политиката на отговора да описва приложението

Ако контролирате източника и представянето наистина се различава само по разпознаваеми заглавки на заявката, назовете тези полета точно. Не заменяйте заместващия знак с Accept-Encoding само защото този пример е кешируем: приложението може да се различава и по език, оторизация или информация извън тези заглавки.

Ако съдържанието е частно или не трябва да се съхранява, изразете това чрез съответната кеш политика. Премахването на Vary не прави персонализираното съдържание безопасно за споделяне.

Настройката на Squid vary_ignore_expire се отнася до обработката на изтичането за различаващи се отговори и историческото поведение на HTTP. Тя не е превключвател, който кара заместващия знак да съвпада.

Подобни статии