Jan
30
2010
0

lighttpd’nin dayanılmaz hafiliği

Apache’den gayrı sunucu bilmezdim, taaki lighttpd ye işim düşene kadar. Ve gördüm ki gerçekten adı kadar hafif bir sunucu imiş. Sadece 762 kb olan bu sunucuyu kurup , php ile bağını kurmak hiç de zor olmadı. Kendi sitesinden indirdiğiniz dosyayı bir klasöre açtıktan sonra geleneksel kurulum yöntemleri ile kuruyoruz : Dosyaları açtığımız dizine gidip ;

1
2
3
./configure
make
make install

diyerek kurulumu tamamlıyoruz. Geleneksel kuruluma ek olarak, istediğim klasöre kurulabilmesini sağlayabilmek için :

1
2
3
./configure --prefix=/home/ersin/lighttpd
make
make install

demek yetiyor. Bundan sonra lighttpd yi ayarlayabilmek için gerekli ayar dosyasını oluşturmaya geldi sıra. Kurulum işlemi tamamlandığında lib,sbin ve share klasörleri oluşturacaktır ( eğer yukarıdaki prefix parametresini kullanıp farklı bir dizine kurdurduysanız) . Kurulum yaptığımız lighttpd klasörüne giderek burada www klasörü oluşturalım.

Kurulumu yukarıdaki komut satırındaki kuruluma göre , farklı bir dizine yapılmış kurulum olduğunu kabul ederek devam edelim.
sbin klasörüne girerek lighttpd.conf adında bir dosya oluşturalım. Bu dosyanın içerisine girerek şu satırları yazalım :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
server.document-root = "/home/ersin/lighttpd/www"
server.port = 8080
server.modules              = (
                                "mod_rewrite",
#                               "mod_redirect",
#                               "mod_alias",
#                               "mod_access",
#                               "mod_cml",
#                               "mod_trigger_b4_dl",
#                               "mod_auth",
#                               "mod_status",
#                               "mod_setenv",
                                "mod_fastcgi",
#                               "mod_proxy",
#                               "mod_simple_vhost",
#                               "mod_evhost",
#                               "mod_userdir",
#                               "mod_cgi",
#                               "mod_compress",
#                               "mod_ssi",
#                               "mod_usertrack",
#                               "mod_expire",
#                               "mod_secdownload",
#                               "mod_rrdtool",
#                               "mod_accesslog"
)
index-file.names = ( "index.php","index.html" )
mimetype.assign = (
".html" => "text/html",
".txt" => "text/plain",
".jpg" => "image/jpeg",
".png" => "image/png"
)

Yuarıdaki kodlar üç aşşağı beş yukarı anlaşılır şeyler. Ama yine de tek tek değinelim.
server.document-root sunucumuzda yayınlanacak olan dosyalar için kök klasörü işaret eder. Bu klasöre atılan dosyaya web den erişilebilir (bunu kendi kurulumunuza göre değiştirin) .
server.port sunucumuzun çalışacağı port. Genelde 80 dir ama, zaten bir sunucunuz olduğunu düşünerek lighttpd yi denerken muhtemel bir problemden uzak tutmak için 8080 girdik.
index-file.names sunucumuzun kök klasöre eriştiğinde bakacağı index dosyasını belirlememizi sağlar.
mimetype.assign uzantılar ile MIME tipi ilişkilendiriyoruz.
Şimdi sıra geldi php yi tanıtmaya. Lighttpd de PHP yi kurabilmek için php-cgi kurmamız gerekmekte.
Ben ubuntu kullandığım için ubuntuya göre kurulumu anlatacağım.

1
apt-get install php5-cgi

gibi tek satır kod ile php5-cgi kurduktan sonra lighttpd.conf a aşağıdaki satırları ekliyoruz

1
2
3
4
5
6
7
8
9
10
11
fastcgi.server = ( ".php" =>
(( "socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi",
"max-procs" => 10,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "10",
"PHP_FCGI_MAX_REQUESTS" => "500"
),
"broken-scriptfilename" => "enable"
))
)

Bu satırları da ekledikden sonra sıra geldi lighttpdyi çalıştırmaya. Tabi bundan önce www dizinimizde index.php dosyası oluşturup içerisine

1
phpinfo();

yazarak kaydetmeliyiz. Böylece php kurulumunu test edebiliriz.
Hadi lighttpd yi çalıştıralım, ilk önce konsoldan kurulumu yaptığımız dizindeki sbin klasörüne giriyoruz. Burda :

1
./lighttpd -D -f lighttpd.conf

yazarak lighttpd yi çalıştırıyoruz ( lighttpd.conf dosyasını kolaylık olsun diye sbin klasörünün içerisinde oluşturmuştum ) . Buradaki “D” parametresi lighttpd nin arka plana geçerek orda çalışmasını engeller. Böylece komut satırından “CTRL+C” ile işlevi sonlandırdığınızda lighttpd çalışmayı durdurur, “D” parametresini eklemezsek “CTRL+C” ile lighttpd yi durduramayız. “f” parametresi hangi config dosyasını kullanacağımızı belirtmek için.
Bu komutu çalıştırdıktan sonra
“2010-01-30 18:10:51: (log.c.166) server started”
benzeri bir çıktı verecektir. Bu da lighttpd nin çalıştığı anlamına gelir. Artık tarayıcı ekranından http://localhost:8080 dedikten sonra php bilgisi dökülecektir ekrana.
İlerleyen zamanlarda lighttpd ile ilgili tecrübelerimi burada paylaşmaya çalışacağım. Güzel günler dileği ile, hoşça kalın.

Yaziyi gonderen Ersin in: Php Web Programlama | Etiketler: ,

Powered by WordPress | conserio | xoppla | TheBuckmaker