This is an old revision of the document!


Co chcemy osiągnąć?

Lighttpd (wym. lighty) to serwer HTTP dostosowany do pracy nawet pod dużym obciążeniem. Jego konfiguracja jest w miarę prosta i logiczna, jednak użytkownicy i administratorzy Apache muszą się “przestawić”. Wszędzie obecna wojna exim ↔ postfix, irssi ↔ BitchX, przeszła i na grunt serwera http i mamy nową wojnę pt. Apache ↔ lighttpd którą wygrywa - nignx :). Pod względem wydajności nginx bije wszystkich na głowę, jednak posiada dość specyficzne podejście do konfiguracji, przez co jest przeznaczony dla bardziej zaawansowanych użytkowników i do serwisów które generują bardzo duże obciązenie. W tym artykule pokażemy, jak skonfigurować Lighttpd wraz z obsługą virtual host i php serwowanym przez fast-cgi.

Do dzieła!

Instalacja podstawowej wersji lighttpd

Podstawowa instalacja w PLD ogranicza się do wklepania:

 # poldek -i lighttpd
 [...]
 Run "/sbin/service lighttpd start" to start LigHTTPd webserver.

Właściwie serwer jest już gotowy, wystarczyłoby go teraz wystartować, przyjrzyjmy sie jednak kilku podstawowym opcjom w pliku

 # vim /etc/lighttpd/lighttpd.conf

Jeśli dysponujemy kilkoma adresami IP, a chcemy by lighttpd słuchał tylko na jednym z nich, zmieniamy zawartość:

server.bind = "60.22.121.11"

Możemy również sprawić, by lighttpd przedstawiał się inaczej, poprzez zmianę server header:

server.tag = "lighttpd superserver"

Teraz już możemy przetestować czy to działa:

# service lighttpd start
Uruchamianie usługi lighttpd......................................[ ZROBIONE ]

Po sprawdzeniu w przeglądarce www czy wszystko działa, możemy spróbować skonfigurować pierwszego virtualnego hosta na lighttpd.

Wiele domen, wielu użytkowników, czyli lighttpd w swoim żywiole - simple vhost

Na początku instalujemy niezbędny moduł:

# poldek -i lighttpd-mod_simple_vhost
[...]
Przeładowanie usługi lighttpd....................................  [ ZROBIONE ]

Następnie edytujemy plik /etc/lighttpd/conf.d/50_mod_simple_vhost.conf i dopisujemy (najlepiej na samym dole):

$HTTP["host"] == "pld.thinkspire.org" {
server.document-root = "/usr/share/dokuwiki"
}

zmieniając oczywiście konkretną ścieżkę do dokumentu oraz domenę, przeładowujemy lighttpd. Jeśli mamy w danym katalogu jakiś plik index.* to powinna nam się wyświetlić konkretna strona.

Możemy również wyświetlić dodatkowo tzw dir listing - czyli listę plików w danym katalogu. Jeśli mamy zainstalowany moduł lighttpd-mod_dirlisting to w powyższym pomiędzy nawiasami “wąsatymi” dopisujemy:

dir-listing.activate = "enable"
dir-listing.encoding        = "utf-8" #kodowanie listingow
dir-listing.hide-dotfiles = "enable" #ta opcja gwarantuje ukrycie plików z kropeczkami na poczatku

Kompletny widok poprawnie skonfigurowanego vhosta wraz z dir listingiem powinien wyglądać więc tak:

 $HTTP["host"] == "pld.thinkspire.org" {
server.document-root = "/usr/share/dokuwiki"
dir-listing.activate = "enable"
dir-listing.encoding        = "utf-8"
dir-listing.hide-dotfiles = "enable"
}

Jazda końcowa - czyli PHP przez fastcgi

Jak wszystko poprzednie - w lighttpd - nie ma rzeczy trudnych, więc i defaultowa instalacja php w oparciu o fastcgi taka nie będzie.

Zacznijmy od instalacji niezbędnych modułów:

# poldek -i lighttpd-php-spawned
[...]
Reloading lighttpd service.........................................[ DONE ]

Ponieważ jest to PLD - to wszystko powinno śmigać “od ręki” :)

Sprawdzamy czy potrawa wyszła smaczna

Standardowo - posługujemy się skryptem phpinfo(), do jego działania potrzebujemy stworzyć plik testowy np test.php, a w jego treści wpisać:

<?php
phpinfo();
?>

i z przeglądarki odwołać się do niego np: http://60.22.121.11/test.php Jeśli wszystko działa poprawnie - powinnismy ujrzeć stronę zaczynającą się od:

PHP Version 5.2.6
pl/przewodniki/lighttpd-czyli-lajtowy-serwer-www.1225447488.txt.gz · Last modified: 2008/10/31 11:04 by paszczus
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0 Powered by Lighttpd - fly light