Mustafa Ulu’nun blogunu okuduktan sonra Lighttpd yi araştırmaya başladım. Araştırmalarımın sonucunda Lightttpd nin php siteleri çalıştırma konusunda Apache2 den bir çok noktada daha iyi olduğunu gördüm.Yaptığım denemeler sonucu lighttpd yi geçmeye karar verdim. Yönettiğim sunucularda kullanmış olduğum Apache2 web sunucularını Lighttpd ye geçişlerini yaparken Türkçe döküman eksiğinin olduğunu fark ettim. Tamamen temel basamaklar için ihtiyacım olan ayarları bi makale halinde sunmaya karar verdim. Apache den hızlı olduğunu görmek için şu ve bu adreslere bakabilirsiniz.
Debian 4.0 üzerinde Lighttpd ve PHP5 kurulumu
Kurulum için sunucusunuzda root iken aşağıdaki komutu verin. Bu komut ile php5-cgi ve lighttpd paketlerini kurmus olacaksınız.
apt-get install lighttpd libterm-readline-gnu-perl php5-cgi
Php5 için kendimiz ayar yapalım.
cp /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-available/10-fastcgi-php5.conf
Şimdi ayar dosyasında bi kaç küçük ayar yapacağız.
sed -i -e ’s/php4/php5/g’ /etc/lighttpd/conf-available/10-fastcgi-php5.conf
Artık php5 için gerekli ayarları yaptıktan sonra php5 modulunu aktif edelim.
lighty-enable-mod fastcgi-php5
Hadi artık lighttpd yi yeniden başlatalım ve php yi aktif olsun.
/etc/init.d/lighttpd force-reload
Şuan artık Lighttpd için php5 desteği vermiş durumdayız. Php yi bir klasör içerisinde tutmak isteyenler için yararı olacağını düşündüğüm şu adrese bi göz atın.
Phpmyadmin ve Lighttpd
Mysql denince akla web dünyasında herhalde ilk akla gelen phpmyadmin dir. Hemen bende phpmyadmini kurmaya kalktım.Hadi gelin komut satırına aşağıdaki komutu verelim ve phpmyadmini kuralım.
apt-get install phpmyadmin
Buraya kadar zaten tipik bildiğimiz bir şey Debian da paket kurmak
Ama sorumuz şu peki şimdi adres yönelndirme işlemini nasıl yapacağız. Bu uygulama sayesinde Lighttpd de adres yönlendirme öğrendim. Şimdi başlıyalım :
nano /etc/lighttpd/lighttpd.conf
komutu ile lighttpd ayar dosyasına girip en alt satırına inelim. Ve aşağıdaki satırı ekleyin.
alias.url = ( “/phpmyadmin” => “/usr/share/phpmyadmin”)
Kaydetip çıkın. Daha sonra Lighttpd yi yeniden başlatın.
/etc/init.d/lighttpd restart
Lighttpd de Virtual Host Oluşturmak
Lighttpd kurduktan sonra bi kaç performans testi yapıp ve phpmyadmini kurmuştum. En son sorun benim için virtual host ile aynı sunucuda birden fazla siteye hizmet vermek gerekiyordu. Bunun için hadi kolları sıvıyalım. Öncelikle vhost ayar dosyalarını tuttacağımız klasörü oluşturmalıyız.
mkdir /etc/lighttpd/vhosts
Şimdi bu klasörden sonra yapamız gereken kullanmayı düşündüğümüz alan adı için bir ayar dosyası oluşturmalıyız.
nano /etc/lighttpd/vhosts/uyarer.com.conf
Ben uyarer.com için oluşturuyorum siz istediğiniz alan adı için oluşturmalısınız. Dosyayı oluşturduktan sonra içeriğini aşağıdaki gibi oluşturabiliriz.
$HTTP[”host”] =~ “(^|www\.)uyarer\.com$” {
server.document-root = “/var/www/sanalKonaklar/uyarer.com/icerik”
server.errorlog = “/var/www/sanalKonaklar/uyarer.com/kayitlar/hata.log”
accesslog.filename = “/var/www/sanalKonaklar/uyarer.com/kayitlar/erisim.log”
server.error-handler-404 = “/hata404.html”
}
İlk satırda bu ayar dosyasının hangi alan adının ayar dosyası olduğunu söylüyoruz. İkinici satırda sitenin iceriğinin tutulacağı klasör adresini veriyoruz. 3 ve 4. satırda ise log dosyalarının bulunacağı yerleri gösteriyoruz. Son satırda da 404 hatası için gosterilecek dosyanın adresini veriyoruz. Bu ayar dosyasını kaydettikten sonra Lighttpd’nin ayar dosyasına bizim tanımladığımız virtual host dosyasını tanımlamalıyız. Bunun için de
nano /etc/lighttpd/lighttpd.conf
ayar dosyasını açtıktan sonra ayar dosyasının münasip bir yerine :
include “vhosts/uyarer.com.conf”
satırını ekleyin ve daha sonra kaydettip çıktıktan sonra lighttpd yi yeniden başlatmalısınız.
Peki subdomain nasıl ekliyoruz ?
Aslında normal bi site ayarını yapmamızdan pek bi farkı yok. Ama aklına gelmeyenler için biz genede ayarını yapalım. talat.uyarer.com subdomaini için ayarlarımızı yapalım. Bunun için daha önce hazırlamış olduğumuz
vhost ayar dosyamızı açalım.
nano /etc/lighttpd/vhosts/uyarer.com.conf
Dosya içerisini az önce oluşturmuştuk. Şimdi de alt kısmına subdomain için gerekli ayarlarımızı yazalım.
$HTTP[”host”] =~ “(^|www\.)talat.uyarer\.com$” {
server.document-root = “/var/www/sanalKonaklar/uyarer.com/talat/icerik”
server.errorlog = “/var/www/sanalKonaklar/uyarer.com/talat/kayitlar/hata.log”
accesslog.filename = “/var/www/sanalKonaklar/uyarer.com/talat/kayitlar/erisim.lo$
server.error-handler-404 = “/hata404.html”
}
Satırlarını ekleyelim. Yukarıda zaten bu satırların ne anlama geldiğini ifade etmiştik. Yanlız dikkat etmemiz gereken bu ayar dosyasında belirtmiş olduğumuz dosya ve dizinleri oluşturmazsak lighttpd yeniden başlamıyacaktır.

Etiket kullanmaya başlasan da, Oİ’de Pardus dışındaki dağıtımlarla ilgili tutorialları görmek zorunda kalmasak?
haklısın benim hatam aslınd ayazıyı Pardusa uyumlu hale getirmek en mantıklısı hem Pardus için dokumanstasyın olacaktır. En kısa surede Pardus halini yazacağım. Hatta etiketede gececegim. Tesekkurler uyardıgın için.
http://www.joomlaperformance.com/articles/benchmarks/lighttpd_vs._apache_joomla_1.5.1_39_13.html adresinde de benzer bir test var. Meraklısına…
çok saol yaa harika bir paylasım.
joomlaperformance.com daki kıyaslama açık Lighttpd RAM: 1GB DDR 266 Apache RAM: 2.5GB DDR 266
Peki hocam niye hala apache Lighttpde göre daha fazla kullanılıyor? 0 lik bir fark şaka değil sonuçta.
Bu sanki windows linuxtan neden daha fazla kullanılıyor yada üzerine neden daha fazla yazılım yazıyor(windowsun) gibi bir soru olmus alsında. Lighttpd yeni bir macera apache ise yılların tecrubesi buyuk bir vakıf. Mevcut yapıda hali hazırda apache ile ayar yapılmıs yıgınla sunucu var ve yıgınla bilgi islemci apache icin ayar yapabiliyor. Bunları degistirmek gercekten guc ister. Benim yazıdaki amacım birseyleri yeni yeni yapan arkadasların karar alırken yardımcı olmak. Ben bu yazıyı yazdıktan sonr akullandıgım tum sunucularda lighttpd ye gectim
neredeyse 3 yıldır lighty kullanıyorum.
çift işlemcili bir xeon sunucu ile 750 Mbit/sec basıyor.(Kbit değil) Üstelik bu test gerçek dünya koşullarında yapıldı. (PHP disabled)
Akıllara zarar bir performansı var. Kararlılık konusunda sorunu yok. (~250days uptime)
Ancak bu sonuç Apache’den daha iyi olduğu anlamına gelmiyor. Apache’nin modül desteği ve entegre olduğu diğer paketler, artı yılların tecrübesi Apache’yi şu an tartışmasız sunucu liginin şampiyonu yapıyor.
Not: Lighty PHP5 CGI olarak çalıştığı için çok yüksek req sayılarında takılabiliyor.