Az only-if-cached tárolt választ kér a proxytól
Kérjen meglévő választ egy együttműködő HTTP-gyorsítótártól, és értelmezze az 504-et kihagyásként, nem hálózati szintű kimenet-szabályozásként.
Egy olyan kéréshez, amelynek már tárolt választ kell használnia, a HTTP a Cache-Control: only-if-cached fejlécet definiálja.
Az ügyfél HTTP gyorsítótárazó proxyn keresztül küldheti:
curl --proxy http://127.0.0.1:3128 \
--header 'Cache-Control: only-if-cached' \
--include http://www.example.org/report
Az ezt az utasítást betartó gyorsítótárnak a kérés egyéb feltételeivel összhangban lévő tárolt választ kell visszaadnia, vagy 504 Gateway Timeoutot, ha nem tudja kielégíteni a kérést. Itt az 504 a gyorsítótár-szabályzatot fejezheti ki, nem a proxyhoz vezető sikertelen TCP-kapcsolatot.
Az utasítás nem engedélyezi automatikusan az elavult tartalmat. A frissesség, az érvényesítési követelmények és egyező Vary mezők továbbra is számítanak. A no-cache kérésutasítás helyette sikeres forrás-érvényesítést kérhet az újrafelhasználás előtt.
Ez abban is különbözik, hogy beállítjuk egy gyorsítótár offline érvényesítési módját. Az only-if-cached az egyedi kérésen utazik, és azt fejezi ki, mit hajlandó az ügyfél fogadni.
Olyan gyorsítótárat használjon, amely támogatja ezt a viselkedést. A figyelmen kívül hagyott kérésutasítás nem tűzfal, ezért a felfelé irányuló forgalom szigorú megakadályozása függetlenül érvényesített hálózati vagy kiszolgálószabályzatot igényel.
Egy közönséges HTTPS CONNECT proxy nem látja a titkosított HTTP-fejléceket, és nem tartja meg az oldalobjektumokat abból az alagútból. A példa szándékosan olyan egyszerű HTTP-erőforrást használ, amelyet a gyorsítótár fel tud dolgozni.