Pro požadavek, který má použít již uloženou odpověď, HTTP definuje Cache-Control: only-if-cached.

Klient jej může poslat přes HTTP cachovací proxy:

curl --proxy http://127.0.0.1:3128 \
  --header 'Cache-Control: only-if-cached' \
  --include http://www.example.org/report

Cache, která tuto direktivu respektuje, má vrátit uloženou odpověď odpovídající ostatním omezením požadavku, nebo 504 Gateway Timeout, když požadavek nemůže splnit. Zde 504 může vyjadřovat cache politiku, nikoli neúspěšné TCP spojení s proxy.

Direktiva automaticky nepovoluje zastaralý obsah. Čerstvost, požadavky na validaci a odpovídající pole Vary stále platí. Direktiva požadavku no-cache může naopak vyžadovat úspěšnou validaci u originálu před opětovným použitím.

To se také liší od nastavení offline režimu validace cache. only-if-cached se nese na jednotlivém požadavku a vyjadřuje, co je klient ochoten přijmout.

Použijte cache, která toto chování podporuje. Ignorovaná direktiva požadavku není firewall, takže striktní zabránění odchozímu provozu vyžaduje nezávisle vynucenou síťovou nebo serverovou politiku.

Běžná HTTPS CONNECT proxy nevidí šifrované HTTP hlavičky a nezachovává objekty stránek z tohoto tunelu. Příklad záměrně používá prostý HTTP zdroj, který cache dokáže zpracovat.

Související články