only-if-cached prašo tarpinio serverio išsaugoto atsakymo
Paprašykite bendradarbiaujančios HTTP talpyklos esamo atsakymo ir aiškinkite 504 kaip talpyklos praleidimą, o ne tinklo lygio išėjimo kontrolę.
Užklausai, kuri turėtų naudoti jau išsaugotą atsakymą, HTTP apibrėžia Cache-Control: only-if-cached.
Klientas gali ją siųsti per HTTP talpyklos tarpinį serverį:
curl --proxy http://127.0.0.1:3128 \
--header 'Cache-Control: only-if-cached' \
--include http://www.example.org/report
Šią direktyvą gerbianti talpykla turėtų grąžinti išsaugotą atsakymą, atitinkantį kitus užklausos apribojimus, arba 504 Gateway Timeout, kai negali užklausos patenkinti. Čia 504 gali reikšti talpyklos politiką, o ne nepavykusį TCP ryšį su tarpiniu serveriu.
Direktyva automatiškai neleidžia pasenusio turinio. Šviežumas, patikrinimo reikalavimai ir atitinkami Vary laukai vis dar svarbūs. Užklausos direktyva no-cache gali vietoj to reikalauti sėkmingo patikrinimo šaltinyje prieš pakartotinį naudojimą.
Tai taip pat skiriasi nuo talpyklos neprisijungusio patikrinimo režimo nustatymo. only-if-cached perduodama atskiroje užklausoje ir išreiškia, ką klientas sutinka gauti.
Naudokite talpyklą, kuri palaiko šį elgesį. Nepaisoma užklausos direktyva nėra ugniasienė, todėl griežtai užkirsti kelią išėjimo srautui reikia savarankiškai taikomos tinklo arba serverio politikos.
Įprastas HTTPS CONNECT tarpinis serveris nemato šifruotų HTTP antraščių ir neišsaugo puslapio objektų iš to tunelio. Pavyzdyje sąmoningai naudojamas paprastas HTTP šaltinis, kurį talpykla gali apdoroti.