Leverage Browser Caching Çözümü

Tarayıcının Önbelleğe Alma Özelliğinden Yararlanmak

 

Nedir : Tarayıcının ön belleğe alma özelliğinden faydalanarak görseller, CSS, HTML veya JavaScript gibi dosyaları sayfa her ziyaret edildiğinde yeniden yüklenmeden  tarayıcı ön belliğinden yüklenmesidir.
Çözüm : .htaccess dosyasına belirli kodların eklenmesi.
Uzman Yorumu : Sunucularımızda genel olarak bunu ayarlıyoruz. Statik içerikler için zaman aşımı cloudflare ile de hazırlanıyor. Ancak bu uyarı genel olarak 3. parti yazılımlardan geliyor. Burada önemli olan kullandığımız içeriklerde versiyonlamayı kaldırmak. Yada ismi değiştirmek. 

 

Genel Açıklama

Sayfa yükleme süreleri önemli ölçüde iyileştirilerek kısaltılabilir. Bunun için, sayfa ziyaretçilerinden internet sitenizin içeriği dosyaları kaydetmelerini ve tekrar kullanmalarını isteyebilirsiniz.

  • Tekrarlayan ziyaretçiler için sayfa yükleme süreleri kısaltılmış olur.
  • Özellikle kullanıcıların web sitelerinin aynı alanlarını düzenli olarak yeniden ziyaret ettiği internet sitelerinde etkili olur.
  • Fayda-maliyet oranı oldukça yüksektir. Bu sebeple maliyet açısından da iyileştirme sağlanmış olur.
  • Erişim gereklidir.

 

Süreleri Ayarlamak İçin Genel Kurallar Nelerdir?

  • Tamamen statik içerik olmalı (global CSS stilleri, logolar vb.) - erişim + 1 yıl
  • Diğer her şey - erişim + 1 hafta

Tarayıcı önbelleği nedir?

Bir tarayıcının bir internet sayfasını her yüklediğinde, sayfayı doğru şekilde görüntüleyebilmek için tüm web dosyalarını indirmesi gereklidir. Bu dosyalar, tüm CSS, HTML, JavaScript ve görüntüleri içermektedir.

Bazı sayfalar sadece birkaç dosyadan oluşabiliyorken ve boyut bakımından küçük olabilir – yalnızca birkaç kilobayt gibi bir boyuttan bahsediyoruz. Fakat; bu sayfalar dışındaki diğer sayfalar için oldukça çok dosya olabilir ve bu dosyalar birkaç megabayt büyüklüğe sahip olabilir. Örneğin; Twitter.com 3 MB ve üzeridir.

Bu tür yüklü dosyalar ile hız sorunu ikiye katlanır.

  1. İnternet sayfasının içerdiği bu büyük dosyaların yüklenmesi oldukça uzun zaman alır. Eğer; yavaş bir internet bağlantınız var ise ya da bir mobil cihazdan bu sayfayı görüntülemeye çalışıyorsanız bu işlem uzun yüklenme süresinden dolayı, uzun bekleme süresi oluşacağı için kullanıcılar için özellikle acı verici olabilir.
  2. Bu yüklü dosyaların her biri sunucuya ayrı bir istek yapacaktır. Sunucunuz aynı anda ne kadar çok istek alırsa, o kadar fazla iş yapması gerekecektir. Bu durum da direkt olarak sayfa hızınıza düşürücü etki yapar.

 

Tarayıcı önbelleği, bu dosyaların bazılarını yerel olarak kullanıcının tarayıcısında depolayarak yükün azalmasına ve sayfa hızının düşmesini engellemeye yardımcı olabilir. İnternet siteni ilk ziyarete edişlerinde yükleme süresi aynı olacaktır. Fakat; aynı kullanıcı web sitenizi yeniden ziyaret ettiği zaman, internet sayfasını yenilediğinde ya da internet sitenizde başka bir sayfaya geçtiğinde bile, yerel olarak ihtiyaç duydukları bazı dosyalara sahip olurlar. Bu da, tarayıcı önbelleğinin, yüklü dosyaların bazılarını yerel olarak kullanıcının tarayıcısında depolaması ile gerçekleşmektedir.

Bu durum, kullanıcının tarayıcısının indirmesi gereken veri miktarının daha az olduğu ve sunucunuza daha az istekte bulunulması gerektiği anlamına gelir. Elde edilen sonuç ise azalan sayfa yükleme süreleridir.

 

Nasıl İşliyor?

Tarayıcı önbelleğe alma işlemi, belirli aralıklarla güncellenmesi gereken belirli sayfaları ya da sayfa bölümlerini işaretleyerek çalışır. Örneğin; web sitenizdeki logonun günden güne değişmesi pek muhtemel değildir. Bu logo görüntünüzü önbelleğe alarak, ziyaretçinin tarayıcısına bu resmi sadece haftada bir defa indirmesi söylenebilir. Böylece, ziyaretçinin internet sitenize aynı hafta içinde yaptığı her ziyaret için tarayıcısının logo görüntüsünü tekrar indirmesi gerekmez.

Web sunucusuna, tarayıcıya bu dosyaları kaydetmesini ve geri geldiğinde bu dosyaları tekrar indirmemesini söyleyerek kullanıcılarınıza zaman kazandırırken aynı zamanda web sunucusu bant genişliğinizden tasarruf etmiş olursunuz.

 

Neden Önemli?

Tarayıcı önbelleğe almanın bu kadar önemli olmasının esas nedeni, web sunucunuzun yükünü hafifletmektir, bu işlem aynı zamanda kullanıcılarınızın yük süresini de azaltır.

 

Tarayıcı Önbelleği Kaldıracı Nasıl Kullanılır?

Tarayıcı önbelleğini etkinleştirmek için, belirli dosya türlerinin son kullanım zamanlarını belirlemek üzere HTTP başlıklarınızı düzenlemeniz gerekir.

 

Apache'yi Uygun Başlıkları Sunmak İçin Yapılandırmak

.htaccess dosyanızı domaininizin kökünde bulun. Bu dosya gizli bir dosyadır, fakat; FileZilla ya da CORE gibi FTP istemcilerinde görünmelidir. Not defteri veya herhangi bir temel metin editörü ile .htaccess dosyasını düzenleyebilirsiniz.

Bu dosyada, önbellek parametrelerimizi tarayıcıya ne tür dosyaları önbelleğe alacağını söyleyecek şekilde ayarlayacağız.



ExpiresActive On



# Images

ExpiresByType image/jpeg "access plus 1 year"

ExpiresByType image/gif "access plus 1 year"

ExpiresByType image/png "access plus 1 year"

ExpiresByType image/webp "access plus 1 year"

ExpiresByType image/svg+xml "access plus 1 year"

ExpiresByType image/x-icon "access plus 1 year"



# Video

ExpiresByType video/mp4 "access plus 1 year"

ExpiresByType video/mpeg "access plus 1 year"



# CSS, JavaScript

ExpiresByType text/css "access plus 1 month"

ExpiresByType text/javascript "access plus 1 month"

ExpiresByType application/javascript "access plus 1 month"



# Others

ExpiresByType application/pdf "access plus 1 month"

ExpiresByType application/x-shockwave-flash "access plus 1 month"

Web sitenizin dosyalarına göre farklı sonlandırma süreleri belirleyebilirsiniz. Css dosyaları gibi bazı dosya türleri daha sık güncellenirse, dosyalarda daha erken bir zaman aşımı süresi ayarlayabilirsiniz.

İşiniz bittiğinde dosyayı bir .txt dosyası olarak kaydetmelisiniz.

Herhangi bir CMS kullanıyorsanız, önbellek uzantıları ya da eklentileri bulunuyor olabilir.

Öneriler

  • Tüm statik kaynaklar için önbelleğe alma konusunda agresif olun.
  • Asgari olarak bir ayda sona erme süresi kullanın (önerilen: erişim artı 1 yıl).
  • Bir yıldan daha fazla bir süreden önceyi önbelleğinize almayın!

 

Dikkat Edilmesi Gerekenler

Tarayıcıyı önbelleğe alırken, belirli dosyalarda parametreleri oldukça uzun süreli olacak şekilde ayarladıysanız, dikkatli olun. Ziyaretçileriniz güncellemelerden sonra internet sitenizin yeni sürümünü görüntüleyemeyebilir.

Dikkatli olmanız gereken bu durum, özellikle web sitenizdeki değişiklikler için dışarıdan bir tasarımcıyla çalışıyorsanız geçerlidir. Tasarımcı firma değişiklikleri yapmış olabilir, fakat; henüz siz bu yapılan değişiklikleri görememiş olabilirsiniz. Bunun sebebi, değiştirilmiş öğelerin tarayıcınızda önbelleğe alınmış olmasıdır.