Ubuntu’ya Varnish Kurulumu

By | 27 Ağustos 2013

Dinamik sayfaların yavaşlığından kurtulmaya ne dersiniz?

İçindekiler

Varnish Nedir?

Varnish bir HTTP hızlandırıcıdır. Ziyaretçileri her ziyarette tekrar oluşturulan dinamik sayfalar yerine önbelleğine alınmış statik sayfalara yönlendirir ve sitenin hızlı bir şekilde açılmasını sağlar. Varnish’in en güzel özelliklerinden bir tanesi ise ne zaman içeriği dinamik olarak oluşturulmasını sağlayacağını bilmesidir. Bu durumda sadece gerek olduğu zaman sayfalar dinamik olarak oluşturulur.

Öngereksinimler

Varnish’i kurmaya başlamadan önce aşağıdaki adımları yaptığınızdan emin olun:

Adım 1 – Kurulum

Varnish, kurulumun kendi deposundan yapılmasını önerilmektedir. Bunun için Varnish depo adresini Ubuntu’ya ekleyelim:

sudo curl http://repo.varnish-cache.org/debian/GPG-key.txt | sudo apt-key add -

Ubuntu’nun depo kaynak dosyasını açalım

sudo nano /etc/apt/sources.list

İçine aşağıdaki satırı ekleyip kaydedelim ve kapatalım

deb http://repo.varnish-cache.org/ubuntu/ lucid varnish-3.0

Son olarak depoyu güncelleyelim ve kurulumu yapalım

sudo apt-get update
sudo apt-get install varnish

Adım 2 – Varnish Ayarları

Bu adımda nginx ve Varnish için portları ayarlayacağız. nginx’i arka plana atıp 8080 portunu vereceğiz ve Varnish 80 portuna geçecek.

Varnish ayar dosyasını açalım

sudo nano /etc/default/varnish

Alternative 2 bölümünün altındaki port number satırının değerini “-a”dan “80”e değiştirelim. Aşağıdaki gibi olması gerek:

 DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

Burada yapmamız gereken tek değişiklik buydu. Kaydedip kapatalım ve default.vcl dosyasını açalım.

sudo nano /etc/varnish/default.vcl

Aşağıdaki satırı bulun ve portun 8080 olduğundan emin olun. Bu port nginx’in portunu belirtiyor.

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

Adım 3 – nginx Ayarları

Şu anda 80 portunu dinleyen iki adet sunucu var. Nginx’i 8080’e atamak için ayar dosyasını açıp portu değiştirelim.

sudo nano /etc/nginx/sites-available/wordpress

Aşağıdaki satırdan portu ayarlayabilirsiniz.

[...]
server {
        listen  127.0.0.1:8080; ## listen for ipv4; this line is default and implied
        [...]

Kaydedip kapatalım.

Adım 4 – Yeniden Başlatma

Nginx ve Varnish’i tekrar başlatalım. Değişiklikler geçerli olacaktır.

sudo service nginx restart
sudo service varnish restart