Cache-Control Header Oluşturucu
Önbellek direktiflerini seç, tam Cache-Control header'ını kopyala — ayrıca hazır nginx ve Apache snippet'leri. Tamamen tarayıcında çalışır; hiçbir şey hiçbir yere gönderilmez.
1 · Direktifleri seç
2 · Sonucu kopyala
CDN.com.tr'de config dosyası düzenlemezsin — önbelleği panelde Delivery Rules'tan path bazında ayarlarsın; bu direktifler aynı seçeneklere karşılık gelir.
Her Cache-Control direktifi ne yapar
Cache-Control header'ı, tarayıcılara ve CDN/proxy önbelleklerine bir yanıtı saklayıp saklamayacaklarını, nerede ve ne kadar süreyle saklayabileceklerini söyler. Bunu doğru ayarlamak, sayfa hızı ve origin yükü için en büyük kazanımlardan biridir. Yukarıdaki her direktifin anlamı şöyle.
public ve private
public, herhangi bir önbelleğin — CDN veya paylaşımlı proxy dahil — yanıtı saklamasına izin verir. private ise saklamayı yalnızca son kullanıcının tarayıcısıyla sınırlar; başka bir kullanıcıya asla sunulmaması gereken kişiselleştirilmiş veya kimlik doğrulamalı yanıtlar için kullan.
max-age ve s-maxage
max-age=N, yanıtın kaç saniye "taze" kalacağıdır (yeniden doğrulama olmadan sunulur). s-maxage=N, paylaşımlı önbellekler (CDN'in) için max-age'i geçersiz kılar; böylece edge'de uzun önbelleklerken tarayıcıları daha kısa tutabilirsin — örn. max-age=0, s-maxage=3600.
no-cache ve no-store
Kulağa benzer gelir ama farklıdır: no-cache önbelleğe izin verir ama her kullanımdan önce origin ile yeniden doğrulamayı zorunlu kılar (değişen HTML için iyidir). no-store ise önbelleği tamamen yasaklar — hiçbir önbelleğe hiçbir şey yazılmaz; hassas, isteğe özel veriler için kullan.
stale-while-revalidate ve stale-if-error
stale-while-revalidate=N, bir önbelleğin biraz bayat yanıtı anında sunmasına, arkada yenilerken izin verir — ziyaretçiler origin'i beklemez. stale-if-error=N ise origin çökerse son iyi kopyayı sunar; olaylarda siten ayakta kalır.
immutable
İçeriğin max-age boyunca hiç değişmeyeceğini bildirir; böylece tarayıcılar sayfa yenilense bile yeniden doğrulamayı atlar. app.9f2c1.js gibi parmak izi/hash'li statik dosyalar için idealdir — uzun bir max-age ile birlikte kullan: public, max-age=31536000, immutable.
must-revalidate ve proxy-revalidate
Bir yanıt bayatladığında, must-revalidate onu önce origin'e sormadan sunmayı yasaklar (sessizce bayat sunum yok). proxy-revalidate aynı kuralı yalnızca paylaşımlı önbelleklere uygular, tarayıcılara daha fazla esneklik bırakır.
Sık kullanılan reçeteler
Hash'li statik dosya: public, max-age=31536000, immutable — "sonsuza dek" önbellekle; dosya değişince hash de değişir.
CDN arkasında HTML: public, max-age=0, s-maxage=3600, stale-while-revalidate=86400 — tarayıcılar hep yeniden doğrular, edge önbelleklenmiş HTML'i sunar ve arkada yeniler.
Kişiselleştirilmiş/kimlik doğrulamalı: private, no-store — CDN veya paylaşımlı proxy'ler tarafından asla önbeklenmez.
Bu kuralları otomatik uygulamak ister misin?
CDN.com.tr, önbellek header'larını panelden path bazında ayarlar — config dosyası yok; edge önbellekleme, Auto SSL ve WAF dahil.