Einzelnen Beitrag anzeigen
#1
Alt 22.04.06, 06:30:39
[Webserver] Lighthttpd - Die Alternative zu Apache
Lord_Pinhead
Benutzerbild von Lord_Pinhead
B.O.F.H.
Registriert seit: 03.08.02
Alter: 41
Geschlecht: ♂
Beiträge: 4.966

Silberne Postauszeichnung Bronzener Topposter Blecherner Postaward Core-Award 

So, ich hab jetzt endlich mal die alternative zum sehr beliebten Webserver Apache getestet. Ich bin wirklich positiv überrascht von der Performance. Mit Mediawiki, dem punBB und phpBB2 Forum habe ich ein paar Benchmarks gemacht auf ein paar Einträge. Resultat: Der kleine Lighthttpd ist bis zu 30% schneller bei Dynamischen Content. Dann habe ich ein statische HTML auf dem Server geladen (150KB) und nochmal beide Server getestet. Das Ergebnis: Lighthttpd ist >50% schneller bei statischen Content. Wer seine Dynamischen Webseiten jetzt mit der Cache-Engine verbindet erreicht ein wirklichen Traumspeed.

Da leider noch die eine oder andere Funktion fehlt bzw. das eine oder andere Modul, wird der Lighthttpd erstmal nicht auf dem SP Server Einzug haben. Aber sobald alles soweit ist, werden wir sicherlich einmal darüber nachdenken den Apache zu begraben und lieber Lighthttpd mit FastCGI zu nehmen. Wer es schon testen möchte, einfach auf die Homepage[1] des Projekts gehen und die Source runterladen. Debian Packete gibt es nur im unstable Zweig, daher habe ich gar nicht erst daran gedacht den einzutragen Hier mal eine kurze Vorgehensweise bei einer Debianinstallation:

Code:
intranet:~# wget http://www.lighttpd.net/download/lighttpd-1.4.11.tar.gz
intranet:~# tar -xzf lighttpd-1.4.11.tar.gz
intranet:~# cd  lighttpd-1.4.11/
intranet:~# apt-get install dh-make autoconf php4-cgi gcc make
intranet:~# dh_make 
intranet:~# dpkg-buildpackage -us -uc
intranet:~# dpkg -i ../lighttpd_1.4.11-1_i386.deb
intranet:~# cat openwrt/lighttpd.conf | sed "s/\/www/\/var\/www/g" > /etc/lighttpd.conf
intranet:~# echo -en "
server.groupname = \"www-data\"\nserver.username = \"www-data\"\n
# 
# Vhost Name
# 
$HTTP[\"host\"] == \"eure.domain\" { 
server.indexfiles = ( \"index.php\", \"index.html\" )
server.document-root = \"/pfad/zu/eurem/webdir\"
\tfastcgi.server = ( \".php\" =>( \"localhost\" =>
\t\t(
\t\t\t\"socket\" => \"/tmp/run/php-fastcgi.socket\",
\t\t\t\"bin-path\" => \"/usr/bin/php4-cgi\"
\t\t\t)
\t\t)
\t)
}\n" >> /etc/lighttpd.conf
intranet:~# lighttpd -f /etc/lighttpd.conf
intranet:~# echo „192.168.2.110	eure.domain“ >> /etc/hosts #ip anpassen
intranet:~# echo "cgi.fix_pathinfo = 1" >> /etc/php4/cgi/php.ini
intranet:~# cat php.ini | sed -s "s/\;extension=mysql.so/extension=mysql.so/g" > php.ini
intranet:~# lynx eure.domain
Voila, so einfach kann das gehen Da PHP nicht als Modul auf Lighthttpd läuf, wird es einfach als CGI mit eingebunden. Wer es noch schneller haben will, der kann gerne PHP selbst Kompilieren und dann mit FastCGI Option (Anleitungen gibt es massenhaft im Internet). Ich hab mal die Grundstruktur von meiner Config angehängt. Der echo Befehl lässt sich einfach anpassen und in ein kleines Shellscript übertragen, dann könnt Ihr Domains und Subdomains schnell anlegen. Wer einen Bind laufen hat (DNS), dem sei gesagt das jede Subdomain auch dort eingetragen werden muss. Ansonsten der Trick mit der hosts den ich schon oben gezeigt habe

So, hoffe ein paar Testen das auf Ihren Kisten, ist echt super daheim ein Webserver stehen zu haben

MFG
Lord Pinhead

Links:
[1] http://www.lighttpd.net

Bewertung zu diesem Post
Iverson3 stimmt zu: Super Sache...

show_config
-------
"Aber es gibt ja kRaSSe SuppOrtEr die MeinEn Alter, dass Sie KrAss MOd sind UnD feTT in Der SchOOl ruLLoern WeiL isch KRaSS der MOD bin - unD wEnn dEin PosTcoUnt sUcKt, alDer, dAnn hAlTs Maul, k?" - Verständliche und klar formulierte Aussage eines Hip-Hoppers