Varnish Cache, son derece güçlü ve esnek bir web hızlandırıcı olup, önbellekleme işlemlerini oldukça etkili şekilde yapar. Gelişmiş özellikleriyle, web sitenizin performansını iyileştirebilir ve kullanıcı deneyimini zirveye taşıyabilirsiniz. Hadi, gelin birlikte bu dev aracın kurulumuna ve ayarlarına adım adım göz atalım.
Varnish Cache Nedir?
Varnish, içerikleri cache’lerken, veritabanı istekleri ve ağır hesaplamalar gibi işlem yüklerini ortadan kaldırarak, dinamik sayfaları bile hızlı bir şekilde sunar. Peki, şimdi bunu Linux sistemimize nasıl kuracağımıza bakalım.
Varnish Cache Kurulumu
1. Paket Listesini Güncelleyin:
İlk olarak, paketlerinizi güncellemek için terminalde şu komutu çalıştırın:
sudo apt-get update
2. Varnish Cache’i Yükleyin:
Şimdi ise Varnish Cache paketini yüklememiz gerekiyor. Bunun için şu komutu kullanabilirsiniz:
sudo apt-get install varnish
Bu komut, Varnish Cache’i sisteminize kuracaktır. Kurulum bitene kadar birkaç dakika beklemeniz gerekebilir.
3. Kurulumu Kontrol Edin:
Kurulum tamamlandıktan sonra, Varnish’in doğru bir şekilde kurulduğunu doğrulamak için şu komutu kullanabilirsiniz:
varnishd -v
Bu komut, Varnish Cache’in yüklü sürümünü gösterecektir. Eğer her şey yolundaysa, kurulum başarıyla tamamlanmış demektir.
Varnish Konfigürasyonu
Varnish, varsayılan olarak port 6081 üzerinden çalışmaktadır. Ancak, çoğu web sunucusu 80 portunu kullanır. Bu yüzden, Varnish’i 80 portuna yönlendireceğiz.
1. Varnish Konfigürasyon Dosyasını Düzenleyin:
Varnish’in yapılandırma dosyasını açmak için şu komutu kullanın:
sudo nano /etc/default/varnish
Bu dosyada `DAEMON_OPTS` satırını bulup, şu şekilde değiştireceğiz:
DAEMON_OPTS="-a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret"
Bu değişiklik, Varnish’in 80 portunda çalışmasını sağlayacak.
2. Varnish’i Apache veya Nginx ile Entegre Edin:
Varnish’i, web sunucusuyla (Apache veya Nginx) entegre etmek için aşağıdaki ayarları yapmamız gerekiyor. Apache kullanıyorsanız, Apache’nin yapılandırma dosyasını açarak, gelen trafiği Varnish’e yönlendirebilirsiniz.
Örneğin, Apache için:
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ProxyPass / http://127.0.0.1:6081/
ProxyPassReverse / http://127.0.0.1:6081/
Benzer şekilde, Nginx ile de Varnish’i entegre edebilirsiniz.
3. Varnish’i Başlatın:
Yapılandırma tamamlandıktan sonra, Varnish’i başlatabiliriz. Aşağıdaki komutu kullanarak servisi yeniden başlatın:
sudo systemctl restart varnish
Artık Varnish, 80 portu üzerinden gelen HTTP isteklerini karşılamaya hazır.
Varnish’in Ayarları ve İpuçları
1. Önbellek Süresi Ayarları:
Web sayfalarının ne kadar süreyle cache’lenmesi gerektiğini belirlemek için `default.vcl` dosyasındaki `vcl_backend_response` kısmını düzenleyebilirsiniz. Bu ayarı şöyle yapabilirsiniz:
sub vcl_backend_response {
if (bereq.url ~ "^/images/") {
set beresp.ttl = 24h;
}
else {
set beresp.ttl = 1h;
}
}
Bu örnekte, `/images/` yolu altındaki içerikler 24 saat boyunca önbelleğe alınırken, diğer içerikler 1 saat boyunca cache’leniyor.
2. Erişim Kontrolü:
Varnish üzerinden gelen trafiği sınırlamak ve kontrol altına almak için ACL (Access Control List) kullanabilirsiniz. Bu, belirli IP’lerin erişimini engellemek veya sadece belirli IP’lerden gelen talepleri kabul etmek için kullanılır.