Webserver Installation · 7 min read · Dec 23, 2025
Installation von Lighttpd mit PHP (PHP-FPM-Modus) und MySQL oder MariaDB auf Ubuntu 15.10
Lighttpd ist ein sicherer, schneller und standardskonformer Webserver, der für geschwindigkeitskritische Umgebungen entwickelt wurde. Dieses Tutorial zeigt, wie man Lighttpd auf einem Ubuntu 15.10-Server mit PHP-Unterstützung (über PHP-FPM) und MySQL oder MariaDB installiert. 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 beschäftigte Websites. Ich verwende PHP-FPM in diesem Tutorial anstelle von Lighttpds 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.
Ich führe alle Schritte in diesem Tutorial mit Root-Rechten aus, stellen Sie also sicher, dass Sie als Root angemeldet sind, bevor Sie fortfahren:
sudo su2 Installation von MySQL / MariaDB
Ubuntu bietet Pakete für den ursprünglichen MySQL-Datenbankserver (MySQL 5.6) und den MySQL-Fork MariaDB (10) an. Die meisten Benutzer ziehen es heute vor, MariaDB zu verwenden, da es etwas schneller als MySQL ist und die Entwicklung schneller voranschreitet. Ich überlasse Ihnen hier die Entscheidung, was installiert werden soll, und werde beide Optionen erklären. Folgen Sie entweder den Anweisungen in Kapitel 2.1 oder 2.2, aber nicht beiden.
2.1 Installation von MySQL
Installieren Sie MySQL wie folgt:
apt-get -y install mysql-server-5.6 mysql-client-5.6Sie werden aufgefordert, ein Passwort für den MySQL-Root-Benutzer anzugeben - dieses Passwort gilt für den Benutzer root@localhost sowie für [email protected], 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
2.2 Installation von MariaDB
Installieren Sie MariaDB wie folgt:
apt-get -y install mariadb-server mariadb-clientJetzt setzen wir ein Root-Passwort für MariaDB.
mysql_secure_installationSie werden mit diesen Fragen konfrontiert:
Geben Sie das aktuelle Passwort für root ein (enter für keines): <-- drücken Sie die Eingabetaste
Root-Passwort festlegen? [Y/n] <-- y
Neues Passwort: <-- Geben Sie hier das neue MariaDB-Root-Passwort ein
Neues Passwort erneut eingeben: <-- Passwort wiederholen
Anonyme Benutzer entfernen? [Y/n] <-- y
Root-Login aus der Ferne verbieten? [Y/n] <-- y
Berechtigungstabellen jetzt neu laden? [Y/n] <-- y3 Installation von Lighttpd
Lighttpd ist als Ubuntu-Paket verfügbar, daher können wir es wie folgt installieren:
apt-get -y install lighttpdRichten Sie jetzt Ihren Browser auf http://192.168.1.100/index.lighttpd.html, und Sie sollten die Lighttpd-Platzhalterseite sehen:

Das Standard-Dokumentenverzeichnis von Lighttpd ist /var/www/html auf Ubuntu, 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 PHP 5.6
Wir können PHP5 in Lighttpd über PHP-FPM zum Laufen bringen, das wir wie folgt installieren:
apt-get -y install php5-fpm php5PHP-FPM ist ein Daemon-Prozess (mit der systemd-Diensteinheit php5-fpm.service), der einen FastCGI-Server auf dem Socket /var/run/php5-fpm.sock ausführt.
5 Konfiguration von Lighttpd und PHP
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. PHPs
; vorheriges Verhalten war es, 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
[...]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# /usr/share/doc/lighttpd-doc/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-phpDies 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-enabledroot@server1:/etc/lighttpd/conf-available# ls -l /etc/lighttpd/conf-enabled
total 0
lrwxrwxrwx 1 root root 33 Nov 11 13:59 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf
lrwxrwxrwx 1 root root 37 Nov 11 13:59 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.confDann laden wir Lighttpd neu:
service lighttpd force-reload6 Testen von PHP5 / Informationen zu Ihrer PHP5-Installation
Das Dokumentenverzeichnis der Standard-Website ist /var/www/html. 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.phpJetzt rufen wir diese Datei in einem Browser auf (z.B. http://192.168.1.100/info.php):

Wie Sie sehen, funktioniert PHP 5.6, 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 PHP haben.
7 MySQL-Unterstützung in PHP5 erhalten
Um MySQL-Unterstützung in PHP zu erhalten, können wir das Paket php5-mysqlnd installieren. Dies wird dem Paket php5-mysql vorgezogen, da es einen neueren MySQL-Treiber enthält, der sowohl MySQL als auch MariaDB unterstützt. 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 php5Wählen Sie die benötigten Module aus und installieren Sie sie wie folgt:
apt-get -y install php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xslXcache 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 -y install php5-xcacheJetzt laden wir PHP-FPM neu:
service php5-fpm reloadLaden 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 -y install phpmyadminSie werden mit den folgenden Fragen konfrontiert:
Webserver automatisch neu konfigurieren: <– lighttpd
Datenbank für phpmyadmin mit dbconfig-common konfigurieren? <– ja
Passwort des administrativen Benutzers der Datenbank: <-- Geben Sie das MySQL/MariaDB-Root-Passwort ein
MySQL-Anwendungspasswort für phpmyadmin: <-- Drücken Sie die Eingabetaste Anschließend können Sie phpMyAdmin unter http://192.168.1.100/phpmyadmin/ aufrufen:

9 PHP-FPM so konfigurieren, dass es eine TCP-Verbindung verwendet (optional)
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 ändern Sie die Zeile listen wie folgt:
[...]
;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:
service php5-fpm reloadÖ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# /usr/share/doc/lighttpd-doc/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:
service lighttpd force-reload10 Download des virtuellen Maschinenimages dieses Tutorials
Dieses Tutorial ist als sofort einsatzbereites virtuelles Maschinenimage im ovf/ova-Format für Howtoforge-Abonnenten verfügbar. Das VM-Format ist mit VMWare und Virtualbox kompatibel. Das virtuelle Maschinenimage verwendet die folgenden Anmeldedaten:
SSH / Shell-Anmeldung
Benutzername: administrator
Passwort: howtoforge
Dieser Benutzer hat Sudo-Rechte.
MySQL / MariaDB-Anmeldung
Benutzername: root
Passwort: howtoforge
Die IP der VM ist 192.168.1.100, sie kann in der Datei /etc/network/interfaces geändert werden. Bitte ändern Sie alle oben genannten Passwörter, um die virtuelle Maschine abzusichern.
11 Links
- Lighttpd: http://www.lighttpd.net/
- PHP: http://www.php.net/
- PHP-FPM: http://php-fpm.org/
- MySQL: http://www.mysql.com/
- Ubuntu: http://www.ubuntu.com/
- phpMyAdmin: http://www.phpmyadmin.net/
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.