Zaten saklanmış bir yanıtı kullanması gereken bir istek için HTTP Cache-Control: only-if-cached tanımlar.

İstemci bunu bir HTTP önbellek proxy'si üzerinden gönderebilir:

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

Bu yönergeye uyan bir önbellek, isteğin diğer kısıtlamalarıyla tutarlı saklanmış bir yanıt döndürmeli ya da isteği karşılayamadığında 504 Gateway Timeout vermelidir. Burada 504, proxy'ye başarısız bir TCP bağlantısını değil, önbellek ilkesini ifade edebilir.

Yönerge eski içeriğe otomatik olarak izin vermez. Tazelik, doğrulama gereksinimleri ve eşleşen Vary alanları hâlâ önemlidir. no-cache istek yönergesi bunun yerine yeniden kullanımdan önce kaynakta başarılı doğrulama isteyebilir.

Bu, bir önbelleğin çevrimdışı doğrulama kipini ayarlamaktan da farklıdır. only-if-cached tek tek istek üzerinde taşınır ve istemcinin neyi kabul etmeye istekli olduğunu ifade eder.

Bu davranışı destekleyen bir önbellek kullanın. Yoksayılan bir istek yönergesi güvenlik duvarı değildir, bu nedenle yukarı akış trafiğini kesin olarak engellemek bağımsız uygulanan bir ağ veya sunucu ilkesi gerektirir.

Sıradan bir HTTPS CONNECT proxy şifrelenmiş HTTP başlıklarını görmez ve o tünelden sayfa nesneleri saklamaz. Örnek, önbelleğin işleyebileceği düz bir HTTP kaynağını bilerek kullanır.

İlgili makaleler