Webserver · 6 min read · Dec 18, 2025
Installation von Lighttpd mit PHP5 (PHP-FPM) und MySQL auf Debian 8 (Jessie)
Lighttpd ist ein sicherer, schneller, standards-konformer Webserver, der für geschwindigkeitskritische Umgebungen entwickelt wurde. Dieses Tutorial zeigt, wie Sie Lighttpd auf einem Debian 8 (Jessie) Server mit PHP5-Unterstützung (über PHP-FPM) und MySQL-Unterstützung installieren können. PHP-FPM (FastCGI Process Manager) ist eine alternative PHP FastCGI-Implementierung mit einigen zusätzlichen Funktionen, die für Websites jeder Größe nützlich sind, insbesondere für stärker frequentierte Seiten. Ich verwende PHP-FPM in diesem Tutorial anstelle von Lighttpd’s spawn-fcgi.
1 Vorbemerkung
In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.1.100. Diese Einstellungen können bei Ihnen abweichen, daher müssen Sie sie gegebenenfalls anpassen. Verwenden Sie einen minimalen Debian-Server als Basis für diese Installation, dies kann entweder ein minimales Image Ihres Rechenzentrums sein oder Sie installieren einen von Grund auf neu, indem Sie unser Debian-Minimalserver-Tutorial verwenden.
2 Installation von MySQL / MariaDB
Debian 8 wird mit 2 MySQL-kompatiblen Datenbanken ausgeliefert, der traditionellen MySQL-Datenbank und MariaDB, einem MySQL-Fork, der vom ursprünglichen MySQL-Erfinder Monty Widenius gepflegt wird. MariaDB führt derzeit in Bezug auf Datenbankgeschwindigkeit und Entwicklungsaktivität, daher werde ich es für meinen Server wählen.
Im Folgenden beschreibe ich die Installation von MariaDB (Kapitel 2.1) und MySQL (Kapitel 2.2), sodass Sie die Datenbank wählen können, die Sie bevorzugen. Stellen Sie einfach sicher, dass Sie entweder Kapitel 2.1 oder 2.2 folgen, aber nicht beiden.
2.1 MariaDB installieren
Um MariaDB zu installieren, führen Sie diesen Befehl aus.
apt-get install mariadb-server mariadb-client
Sie werden aufgefordert, ein Passwort für den MariaDB-Root-Benutzer anzugeben - dieses Passwort ist sowohl für den Benutzer root@localhost als auch für [email protected] gültig, sodass wir später kein MariaDB-Root-Passwort manuell angeben müssen:
Neues Passwort für den MariaDB "root"-Benutzer: <-- yourrootsqlpassword Wiederholen Sie das Passwort für den MariaDB "root"-Benutzer: <-- yourrootsqlpassword
2.2 MySQL installieren
Wir installieren MySQL 5 wie folgt:
apt-get install mysql-server mysql-client
Sie werden aufgefordert, ein Passwort für den MySQL-Root-Benutzer anzugeben - dieses Passwort ist sowohl für den Benutzer root@localhost als auch für [email protected] gültig, sodass wir später kein MySQL-Root-Passwort manuell angeben müssen:
Neues Passwort für den MySQL “root”-Benutzer: <– yourrootsqlpassword
Wiederholen Sie das Passwort für den MySQL “root”-Benutzer: <– yourrootsqlpassword
3 Installation von Lighttpd
Lighttpd ist als Debian-Paket verfügbar, daher können wir es wie folgt installieren:
apt-get install lighttpd
Richten Sie jetzt Ihren Browser auf http://192.168.1.100/, und Sie sollten die Lighttpd-Platzhalterseite sehen:

Der Standard-Dokumentenstamm von Lighttpd ist /var/www auf Debian, und die Konfigurationsdatei ist /etc/lighttpd/lighttpd.conf.
Zusätzliche Konfigurationen werden in Dateien im Verzeichnis /etc/lighttpd/conf-available gespeichert - diese Konfigurationen können mit dem Befehl lighttpd-enable-mod aktiviert werden, der einen Symlink vom Verzeichnis /etc/lighttpd/conf-enabled zur entsprechenden Konfigurationsdatei im Verzeichnis /etc/lighttpd/conf-available erstellt. Sie können Konfigurationen mit dem Befehl lighttpd-disable-mod deaktivieren.
4 Installation von PHP5
Wir können PHP5 in Lighttpd über PHP-FPM zum Laufen bringen, das wir wie folgt installieren:
apt-get install php5-fpm php5
PHP-FPM ist ein Daemon-Prozess (mit dem Init-Skript /etc/init.d/php5-fpm), der einen FastCGI-Server auf dem Socket /var/run/php5-fpm.sock ausführt.
5 Konfiguration von Lighttpd und PHP5
Um PHP5 in Lighttpd zu aktivieren, müssen wir /etc/php5/fpm/php.ini ändern und die Zeile cgi.fix_pathinfo=1 auskommentieren:
nano /etc/php5/fpm/php.ini
[...] ; cgi.fix_pathinfo bietet *echte* PATH_INFO/PATH_TRANSLATED-Unterstützung für CGI. PHP's ; vorheriges Verhalten war, PATH_TRANSLATED auf SCRIPT_FILENAME zu setzen und nicht zu verstehen, ; was PATH_INFO ist. Für weitere Informationen zu PATH_INFO siehe die CGI-Spezifikationen. Das Setzen ; dieses Wertes auf 1 bewirkt, dass PHP CGI seine Pfade an die Spezifikation anpasst. Ein Wert ; von null bewirkt, dass PHP sich wie zuvor verhält. Standard ist 1. Sie sollten Ihre Skripte ; so anpassen, dass sie SCRIPT_FILENAME anstelle von PATH_TRANSLATED verwenden. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...]
Und starten Sie den php5-fpm-Dienst neu, um die Konfigurationsänderung anzuwenden:
systemctl restart php5-fpm.service
Die Lighttpd-Konfigurationsdatei für PHP /etc/lighttpd/conf-available/15-fastcgi-php.conf ist für die Verwendung mit spawn-fcgi geeignet, jedoch möchten wir PHP-FPM verwenden, daher erstellen wir eine Sicherung der Datei (benannt 15-fastcgi-php-spawnfcgi.conf) und ändern 15-fastcgi-php.conf wie folgt:
cd /etc/lighttpd/conf-available/ cp 15-fastcgi-php.conf 15-fastcgi-php-spawnfcgi.conf nano 15-fastcgi-php.conf
# -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## Starten Sie einen FastCGI-Server für PHP (benötigt das php5-cgi-Paket) fastcgi.server += ( ".php" => (( "socket" => "/var/run/php5-fpm.sock", "broken-scriptfilename" => "enable" )) )
Um die FastCGI-Konfiguration zu aktivieren, führen Sie die folgenden Befehle aus:
lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php
Dies erstellt die Symlinks /etc/lighttpd/conf-enabled/10-fastcgi.conf, die auf /etc/lighttpd/conf-available/10-fastcgi.conf zeigt, und /etc/lighttpd/conf-enabled/15-fastcgi-php.conf, die auf /etc/lighttpd/conf-available/15-fastcgi-php.conf zeigt:
ls -l /etc/lighttpd/conf-enabled
root@server1:/etc/lighttpd/conf-available# ls -l /etc/lighttpd/conf-enabled total 0 lrwxrwxrwx 1 root root 33 Aug 11 08:20 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf lrwxrwxrwx 1 root root 37 Aug 11 08:20 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.conf
Dann laden wir Lighttpd neu:
systemctl force-reload lighttpd.service
6 Testen von PHP5 / Details zu Ihrer PHP5-Installation erhalten
Der Dokumentenstamm der Standardwebsite ist /var/www. Wir werden jetzt eine kleine PHP-Datei (info.php) in diesem Verzeichnis erstellen und sie in einem Browser aufrufen. Die Datei zeigt viele nützliche Details über unsere PHP-Installation an, wie die installierte PHP-Version.
nano /var/www/html/info.php
Jetzt rufen wir diese Datei in einem Browser auf (z.B. http://192.168.1.100/info.php):

Wie Sie sehen, funktioniert PHP5, und es funktioniert über FPM/FastCGI, wie in der Zeile Server API angezeigt. Wenn Sie weiter nach unten scrollen, sehen Sie alle Module, die bereits in PHP5 aktiviert sind. MySQL ist dort nicht aufgeführt, was bedeutet, dass wir noch keine MySQL-Unterstützung in PHP5 haben.
7 MySQL-Unterstützung in PHP5 erhalten
Um MySQL-Unterstützung in PHP zu erhalten, können wir das Paket php5-mysqlnd installieren. Das ist ein neuer Datenbanktreiber, der mit MySQL und MariaDB kompatibel ist. Es ist eine gute Idee, auch einige andere PHP5-Module zu installieren, da Sie diese möglicherweise für Ihre Anwendungen benötigen. Sie können nach verfügbaren PHP5-Modulen wie folgt suchen:
apt-cache search php5
Wählen Sie die benötigten aus und installieren Sie sie wie folgt:
apt-get install php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-pspell php5-recode php5-sqlite php5-tidy php5-xmlrpc php5-xsl
Xcache ist ein kostenloser und offener PHP-Opcode-Cache zum Cachen und Optimieren von PHP-Zwischencode. Es ist ähnlich wie andere PHP-Opcode-Caches, wie eAccelerator und APC. Es wird dringend empfohlen, einen dieser Caches zu installieren, um Ihre PHP-Seite zu beschleunigen.
Xcache kann wie folgt installiert werden:
apt-get install php5-xcache
Jetzt laden wir PHP-FPM neu:
systemctl restart php5-fpm.service
Laden Sie jetzt http://192.168.1.100/info.php in Ihrem Browser neu und scrollen Sie wieder zum Abschnitt Module. Sie sollten jetzt viele neue Module dort finden, einschließlich des MySQL-Moduls:

8 phpMyAdmin
phpMyAdmin ist eine Weboberfläche, über die Sie Ihre MySQL-Datenbanken verwalten können. Es ist eine gute Idee, es zu installieren:
apt-get install phpmyadmin
Sie werden die folgenden Fragen sehen:
Webserver automatisch neu konfigurieren: <– lighttpd

Datenbank für phpmyadmin mit dbconfig-common konfigurieren? <-- Ja Passwort des administrativen Benutzers der Datenbank: <-- yourrootsqlpassword MySQL-Anwendungspasswort für phpmyadmin: <-- Drücken Sie
Anschließend können Sie phpMyAdmin unter http://192.168.1.100/phpmyadmin/ aufrufen:

9 PHP-FPM dazu bringen, eine TCP-Verbindung zu verwenden
Standardmäßig hört PHP-FPM auf dem Socket /var/run/php5-fpm.sock. Es ist auch möglich, PHP-FPM eine TCP-Verbindung verwenden zu lassen. Dazu öffnen Sie /etc/php5/fpm/pool.d/www.conf…
nano /etc/php5/fpm/pool.d/www.conf
… und lassen Sie die Listenzeile wie folgt aussehen:
[...] ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 [...]
Dies bewirkt, dass PHP-FPM auf Port 9000 auf der IP 127.0.0.1 (localhost) hört. Stellen Sie sicher, dass Sie einen Port verwenden, der auf Ihrem System nicht verwendet wird.
Laden Sie dann PHP-FPM neu:
systemctl restart php5-fpm.service
Öffnen Sie als Nächstes die PHP-Konfigurationsdatei von Lighttpd /etc/lighttpd/conf-available/15-fastcgi-php.conf und ersetzen Sie die Socket-Zeile durch Host- und Port-Zeilen:
nano /etc/lighttpd/conf-available/15-fastcgi-php.conf
# -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## Starten Sie einen FastCGI-Server für PHP (benötigt das php5-cgi-Paket) fastcgi.server += ( ".php" => (( "host" => "127.0.0.1", "port" => "9000", "broken-scriptfilename" => "enable" )) )
Laden Sie schließlich Lighttpd neu:
systemctl force-reload lighttpd.service
10 Links
- Lighttpd: http://www.lighttpd.net/
- PHP: http://www.php.net/
- PHP-FPM: http://php-fpm.org/
- MySQL: http://www.mysql.com/
- Debian: http://www.debian.org/
- phpMyAdmin: http://www.phpmyadmin.net/
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.