Nginx tarayıcı önbellekleme (Plesk Panel üzerinde uygulama)

Photo of author

Kerem SARI

Nginx, yüksek performanslı bir web sunucusu olarak yaygın şekilde kullanılmaktadır ve çeşitli optimizasyonlara olanak tanır. Bu optimizasyonlardan biri de tarayıcı önbellekleme yapılandırmasıdır.

Önemli not

Önbellekleme işlemi, yalnızca tarayıcı önbellekleme işlevinden ibaret değildir.

Aslında, önbellekleme ilk olarak sunucu temelinde gerçekleşir. Sunucu önbelleklemesi, web sayfalarının veya dosyalarının sık kullanılan kısımlarının sunucunun belleğinde veya diskinde saklanarak sonraki isteklerde daha hızlı yanıt verilmesini sağlar. Plesk Panel üzerinden Nginx önbellekleme seçeneğini aktif ederek, bu işlemi sunucu tarafında etkinleştirebilirsiniz. Bu sayede, performans için sıkça duyduğunuz önbellekleme özelliğini herhangi bir eklenti kullanmadan web sitenize entegre etmiş olursunuz.

Pleks Panel Nginx önbelleği aktif etmek için bu sayfayı ziyaret edebilrisiniz: Plesk Panel Nginx önbellekleme nedir ve nasıl etkinleştirilir?

Tarayıcı önbellekleme nedir?

Tarayıcı önbellekleme, sunucu üzerinde oluşturulan önbellek dosyalarının, tarayıcınızda ne kadar süre boyunca saklanacağını belirler. Örneğin, bir resim veya CSS dosyası tarayıcı tarafından bir kez indirildikten sonra, belirli bir süre boyunca tekrar indirilmeye gerek kalmadan yerel olarak saklanır. Bu süreyi belirlemek, hem kullanıcı deneyimini iyileştirir hem de sunucu üzerindeki yükü azaltır.

Tarayıcı önbelleklemenin SEO ve performans testlerindek önemi

Google PageSpeed gibi performans test araçları, tarayıcı önbellekleme yapılandırmasını özellikle inceler. Sunucu temelli önbellekleme aktif olsa bile, bu dosyaların tarayıcıda ne kadar süre saklanacağını belirlemediğiniz sürece, bu analiz araçları önbellekleme eksikliği raporlayabilir. Bu, sitenizin performans puanını olumsuz etkileyebilir ve kullanıcı deneyimi açısından da istenmeyen durumlar yaratabilir.

Nginx üzerinde tarayıcı önbellekleme

Tarayıcı önbellekleme, bir web sitesindeki belirli statik dosyaların (örneğin, resimler, JavaScript, CSS dosyaları) tarayıcıda belirli bir süre boyunca saklanmasını sağlar. Bu, kullanıcıların aynı dosyayı sunucudan tekrar indirmeden yerel önbellekten yüklemesine olanak tanır, bu da web sitenizin hızını artırır ve sunucu yükünü azaltır.

Plesk panel üzerinde tarayıcı önbellekleme yapılandırması

Bu iki şekilde uygulanabilir.

Plesk Panel, Nginx üzerinde çalışan siteler için ek Nginx direktifleri eklemeyi kolaylaştırır. Plesk Panel üzerinden tarayıcı önbellekleme ayarlarını yapmak için aşağıdaki adımları izleyebilirsiniz:

Plesk Panel’e Giriş Yapın: Plesk Panel’e giriş yapın ve yönetmek istediğiniz domaini seçin.

Apache ve Nginx Ayarlarına Erişim: Domain ayarları altında “Apache & Nginx Ayarları” (Apache & Nginx Settings) bölümüne gidin.

Ek Nginx Direktifleri: Bu bölümde, “Ek Nginx Direktifleri” (Additional Nginx Directives) başlığı altında bir metin kutusu göreceksiniz.

Bu alana aşağıdaki tarayıcı önbellekleme kodunu ekleyin:

location ~* \.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf|x-html|xml|woff|woff2|ttf|svg|webp|eot)$ { expires 30d; } 

Eğer Ek Direktifler kısmı yoksa: .htaccess dosyasını kullanabilirsiniz.

Nginx tarayıcı önbellekleme için .htaccess ayarları

Plesk Panel üzerinde Ek Direktifler kısmı bulunmuyorsa, .htaccess dosyası ile tarayıcı önbellekleme yapılandırmasını doğrudan yapabilirsiniz.

# Tarayıcı Önbellekleme için ayarlar
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 1 month"
    
    # Resim dosyaları için önbellekleme
    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"
    
    # CSS ve JavaScript dosyaları için önbellekleme
    ExpiresByType text/css "access plus 1 year"
    ExpiresByType application/javascript "access plus 1 year"
    ExpiresByType application/x-javascript "access plus 1 year"
    
    # Diğer dosya türleri için önbellekleme
    ExpiresByType application/pdf "access plus 1 month"
    ExpiresByType text/html "access plus 1 hour"
</IfModule>

# Tarayıcı Önbellekleme için Cache-Control ayarları
<IfModule mod_headers.c>
    # Uzun süreli önbellek için header ayarları
    Header set Cache-Control "max-age=31536000, public"
    # Daha kısa süreli önbellek için header ayarları
    Header set Cache-Control "max-age=3600, must-revalidate" "expr=%{REQUEST_URI} =~ m#\.(css|js|jpg|jpeg|png|gif|webp|svg|pdf|webp)$#"
</IfModule>

Kod Açıklaması:

location ~* \.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf|x-html|xml|woff|woff2|ttf|svg|webp|eot)$ { ... }: Bu satır, belirli dosya uzantılarını hedef alır. ~* ifadesi, büyük/küçük harf duyarlılığını ortadan kaldırır.

expires 30d;: Bu direktif, belirtilen dosyaların tarayıcıda 30 gün boyunca önbellekte saklanmasını sağlar. Bu süre boyunca tarayıcı bu dosyaları sunucudan yeniden indirmez.

Ayarları Kaydedin ve Uygulayın: Yaptığınız değişiklikleri kaydedin. Plesk Panel, Nginx yapılandırmasını otomatik olarak yeniden yükleyecek ve değişiklikler hemen geçerli olacaktır.

Farklı Zaman Aralıkları Belirleme

Nginx’te expires direktifi, belirli bir süre boyunca dosyaların tarayıcıda önbellekte tutulmasını sağlar. İşte bazı örnekler:

  • expires 7d;: Dosyalar 7 gün boyunca önbellekte saklanır.
  • expires 1h;: Dosyalar 1 saat boyunca önbellekte saklanır.
  • expires 1y;: Dosyalar 1 yıl boyunca önbellekte saklanır.
  • expires 30d;: Dosyalar yaklaşık olarak 1 ay (30 gün) boyunca önbellekte saklanır.

Nginx’te doğrudan “1 ay” ifadesi kullanılamaz, çünkü ayların gün sayısı değişken olabilir. Bu nedenle, “1 ay” süresi için genellikle 30d veya 31d kullanılır.

Sonuç

Plesk Panel üzerinden Nginx tarayıcı önbellekleme ayarlarını yapmak, hem sunucu performansınızı artırmak hem de kullanıcı deneyimini iyileştirmek için etkili bir yöntemdir. Bu ayarlar, statik dosyaların tarayıcıda uzun süre saklanmasını sağlayarak sunucu üzerindeki gereksiz yükü azaltır ve sayfa yükleme sürelerini kısaltır. Plesk Panel, bu ayarları kullanıcı dostu bir arayüzle yapılandırmanıza olanak tanır, bu da teknik bilgi gereksinimini minimuma indirir.

Diğer web sunucuları için tarayıcı önbellekleme

Bu tür tarayıcı önbellekleme yapılandırmaları sadece Nginx’e özgü değildir. Diğer web sunucuları da benzer önbellekleme direktifleri veya başlıkları destekler. İşte birkaç örnek:

1. Apache HTTP Server

Apache’de, tarayıcı önbellekleme için mod_expires modülü kullanılır. Aşağıdaki gibi bir yapılandırma ekleyerek benzer bir etki yaratabilirsiniz:

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg "access plus 30 days"
    ExpiresByType image/jpeg "access plus 30 days"
    ExpiresByType image/png "access plus 30 days"
    ExpiresByType image/gif "access plus 30 days"
    ExpiresByType text/css "access plus 30 days"
    ExpiresByType application/javascript "access plus 30 days"
</IfModule>

2. Lighttpd

Lighttpd sunucusunda da benzer şekilde önbellekleme başlıkları ayarlanabilir:

$HTTP["url"] =~ "\.(jpg|jpeg|png|gif|css|js)$" {
    expire.url = ( "" => "access 30 days" )
}

3. Caddy

Caddy, varsayılan olarak tarayıcı önbellekleme gibi ayarları yapılandırmanıza izin veren header direktifini kullanır:

example.com {
    header / {
        Cache-Control "public, max-age=2592000"
    }
}

Burada 2592000 saniye 30 gün anlamına gelir.

4. IIS (Internet Information Services)

IIS sunucusunda, HTTP yanıt başlıkları üzerinden benzer ayarlar yapılabilir:

  • Web.config Dosyası:
<configuration>
  <system.webServer>
    <staticContent>
      <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="30.00:00:00" />
    </staticContent>
  </system.webServer>
</configuration>

Bu örnekler, farklı web sunucularında tarayıcı önbellekleme ayarlarının nasıl yapıldığını gösterir. expires direktifi Nginx’e özgü olabilir, ancak diğer web sunucularında da benzer işlevsellikler farklı modüller veya yapılandırma dosyaları aracılığıyla elde edilebilir.

Yorum yapın

Anasayfa » Sunucu & Hosting » Nginx tarayıcı önbellekleme (Plesk Panel üzerinde uygulama)