Et lagret svar med Vary: * feiler alltid i den vanlige Vary-matchtesten. Proxyen kan ikke konkludere at en senere forespørsel har krav på samme representasjon bare fordi URL-en og de synlige headerne ser like ut.

Sammenlign det med:

Vary: Accept-Encoding

Dette navngir et forespørselsfelt som bufferen kan sammenligne. Jokertegnet sier at slik headersammenligning ikke er nok. Mer ferskhet eller større buffer gir ikke den manglende utvalgsinformasjonen.

Forskjellen ligger mellom lagring og gjenbruk. En buffer kan beholde informasjon som er nyttig for validering, men en lagret jokertegnvariant blir ikke et vanlig matchende svar som kan oppfylle neste forespørsel. Proxyen må som regel heller kontakte opphavet.

La svarpolicyen beskrive applikasjonen

Hvis du styrer opphavet og representasjonen virkelig bare varierer etter identifiserbare forespørselsheadere, bør du navngi disse feltene presist. Ikke bytt ut jokertegnet med Accept-Encoding bare fordi det eksempelet er cachebart: applikasjonen kan også variere etter språk, autorisasjon eller informasjon utenfor disse headerne.

Hvis innholdet er privat eller ikke bør lagres, uttrykk det gjennom den tilsvarende cachepolicyen. Å fjerne Vary gjør ikke personlig innhold trygt å dele.

Squids vary_ignore_expire handler om utløpshåndtering for varierende svar og historisk HTTP-atferd. Det er ikke en bryter som får jokertegnet til å matche.

Relaterte artikler