Tarayıcı Önbelleği

Tarayıcının indirdiği dosyaları kendi diskinde saklaması. İkinci ziyarette sayfa neredeyse anında açılır ama güncelleme yayınlamayı zorlaştırır.

Tarayıcı önbelleği, tarayıcının bir kez indirdiği dosyaları ziyaretçinin kendi cihazında saklamasıdır. Aynı kişi siteye tekrar geldiğinde stil dosyası, yazı tipi ve görseller yeniden indirilmez; doğrudan diskten ya da bellekten okunur.

Ne kadar kazandırır?

Çok. İlk ziyarette bir megabayt dosya indiren bir sayfa, ikinci ziyarette yalnız HTML'i çekip gerisini diskten okuyabilir. Fark özellikle mobil bağlantıda hissedilir ve sayfa içinde gezinen ziyaretçinin her tıklamasında tekrar eder. Bu, sunucu tarafındaki önbellek katmanlarından ayrı, ziyaretçinin cihazında çalışan son halkadır.

Süreyi kim belirler?

Sunucu, her dosyayla birlikte Cache-Control başlığını gönderir. max-age dosyanın kaç saniye sunucuya hiç sorulmadan kullanılacağını söyler. no-cache ise "sakla ama her kullanımdan önce sor" demektir; dosya değişmemişse sunucu içeriksiz, hafif bir 304 yanıtı döner.

web.dev'in önerisi şu: adında sürüm ya da parmak izi taşıyan dosyalara bir yıl (max-age=31536000), sürüm taşıyamayan HTML'e kısa süre ya da yeniden doğrulama. Yanına sık yazılan immutable bazı tarayıcılarda yok sayıldığı için tek başına güvenilecek bir şey değildir.

Tuzak: aynı ada yeni içerik

Uzun önbellek yayınladıktan sonra aynı dosya adına yeni içerik yazarsanız kimse görmez. Ne ziyaretçinin tarayıcısı ne de araya giren CDN yeniden sorar; ikisi de eski kopyayı servis etmeye devam eder.

6 Ağustos 2026'da iki hizmet sayfamın diyagramlarını yeniledim ve aynı adla yükledim. Düz adres eski 71.086 baytlık dosyayı vermeye devam etti, sorgu dizesi eklenmiş adres yeni 81.040 baytlık dosyayı. Dosya diskte doğruydu, sorun önbellekteydi. O günden beri her görselin adına içeriğinden türeyen sekiz haneli bir damga ekliyorum; 12 Ağustos 2026'da sitede 82 damgalı dosya vardı.

24 Ağustos 2026'da yazı tipini 72,5 KB'den 45,5 KB'ye küçülttüm. Ön yükleme satırında sürüm eki bilerek kırpıldığı için orada ?v= işe yaramazdı; dosyayı yeni adla yayınladım.

HTML neden kısa tutulur?

Çünkü HTML'in adresi sabittir ve içeriği sık değişir. Sayfa adresine sürüm eki koyamazsınız; koysanız her güncellemede bağlantılarınız ve kanonik adresiniz değişir. Bu yüzden uzun süre saklanan yalnız değişmeyen varlıklardır, HTML ise ya hiç saklanmaz ya da her açılışta sunucuya sorulur.

Nasıl kontrol edilir?

Tarayıcının geliştirici araçlarında Ağ sekmesini açıp sayfayı ikinci kez yükleyin. Boyut sütununda "disk cache" ya da "memory cache" yazan dosyalar indirilmemiş, yerelden okunmuştur. Yanıt başlıklarında da Cache-Control satırının ne söylediğine bakın.

13 Ekim 2026'da kendi sitemi böyle okudum. Stil dosyası, yazı tipi ve görseller max-age=2592000, yani 30 gün alıyor; 16 Eylül'deki sunucu taşımasından önce bir yıldı. HTML max-age=0 ile her seferinde sunucuya soruluyor, site haritası ve robots.txt on dakika saklanıyor. Bu ayarların LCP ve Core Web Vitals tarafındaki etkisi en çok tekrar eden ziyaretçide görünür.

Ücretsiz ön inceleme

Bu terim sizin sitenizde nasıl duruyor?

Tanımı okumak bir başlangıç. Sitenizde karşılığı var mı, birlikte bakalım.