Webserver Installation · 4 min read · Dec 23, 2025
Wie man Lighttpd mit PHP-FPM und MariaDB auf CentOS 7 installiert
Lighttpd ist ein sicherer, schneller, standardskonformer Webserver, der für geschwindigkeitskritische Umgebungen entwickelt wurde. Dieses Tutorial zeigt, wie Sie Lighttpd auf einem CentOS 7-Server mit PHP-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 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.
2 MariaDB als MySQL-Ersatz installieren
Zuerst installieren wir MySQL so:
yum -y install mariadb mariadb-serverDann erstellen wir die Systemstartlinks für MySQL (damit MySQL automatisch startet, wenn das System bootet) und starten den MySQL-Server:
systemctl enable mariadb.service
systemctl start mariadb.serviceSetzen Sie Passwörter für das MariaDB-Root-Konto:
mysql_secure_installation[root@server1 ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation:HINWEIS: DAS AUSFÜHREN ALLER TEILE DIESES SCRIPTS WIRD FÜR ALLE MariaDB
SERVER IM PRODUKTIONSEINSATZ EMPFOHLEN! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!Um sich bei MariaDB anzumelden, um es zu sichern, benötigen wir das aktuelle
Passwort für den Root-Benutzer. Wenn Sie MariaDB gerade installiert haben und
Sie das Root-Passwort noch nicht festgelegt haben, ist das Passwort leer,
also sollten Sie hier einfach die Eingabetaste drücken.Geben Sie das aktuelle Passwort für root ein (Eingabetaste für keines): <-- Eingabetaste drücken
OK, Passwort erfolgreich verwendet, weiter...Das Setzen des Root-Passworts stellt sicher, dass niemand ohne die richtige
Autorisierung auf den MariaDB-Root-Benutzer zugreifen kann.Root-Passwort festlegen? [Y/n] <-- y
Neues Passwort: <-- neues Passwort eingeben
Neues Passwort erneut eingeben: <-- neues Passwort eingeben
Passwort erfolgreich aktualisiert!
Aktualisieren der Berechtigungstabellen..
... Erfolg!
Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem
ermöglicht, sich bei MariaDB anzumelden, ohne dass ein Benutzerkonto für
ihn erstellt werden muss. Dies ist nur für Testzwecke gedacht und soll
die Installation etwas reibungsloser gestalten. Sie sollten sie entfernen,
bevor Sie in eine Produktionsumgebung wechseln.Anonyme Benutzer entfernen? [Y/n] <-- y
... Erfolg!Normalerweise sollte root nur von 'localhost' aus eine Verbindung herstellen
dürfen. Dies stellt sicher, dass niemand das Root-Passwort über das Netzwerk
erraten kann.Remote-Root-Login verbieten? [Y/n] <-- y
... Erfolg!Standardmäßig kommt MariaDB mit einer Datenbank namens 'test', auf die jeder
Zugriff hat. Dies ist ebenfalls nur für Testzwecke gedacht und sollte
vor dem Wechsel in eine Produktionsumgebung entfernt werden.Testdatenbank und Zugriff darauf entfernen? [Y/n] <-- y
- Testdatenbank wird gelöscht...
... Erfolg!
- Berechtigungen für die Testdatenbank werden entfernt...
... Erfolg!Das Aktualisieren der Berechtigungstabellen stellt sicher, dass alle bisher
getätigten Änderungen sofort wirksam werden.Berechtigungstabellen jetzt aktualisieren? [Y/n] <-- y
... Erfolg!Aufräumen...Fertig! Wenn Sie alle oben genannten Schritte abgeschlossen haben, sollte Ihre
MariaDB-Installation jetzt sicher sein.Danke, dass Sie MariaDB verwenden!3 Lighttpd installieren
Da Lighttpd und PHP-FPM nicht in den offiziellen CentOS-Repositories verfügbar sind, müssen wir das EPEL-Repository aktivieren:
yum -y install epel-releaseImportieren Sie den EPEL GPG-Schlüssel:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7und führen Sie dann aus:
yum updateAnschließend können wir Lighttpd so installieren:
yum -y install lighttpdDann erstellen wir die Systemstartlinks für Lighttpd (damit Lighttpd automatisch startet, wenn das System bootet) und starten es:
systemctl enable lighttpd.service
systemctl start lighttpd.serviceWenn Lighttpd mit der folgenden Fehlermeldung nicht startet…
(network.c.203) socket failed: Address family not supported by protocol… öffnen Sie /etc/lighttpd/lighttpd.conf…
nano /etc/lighttpd/lighttpd.conf… und ändern Sie server.use-ipv6 von enable auf disable:
[...]
##
## Verwenden Sie IPv6?
##
server.use-ipv6 = "disable"
[...] Versuchen Sie dann, Lighttpd erneut zu starten - es sollte jetzt ohne Probleme funktionieren:
systemctl start lighttpd.serviceLighttpd hat sein Dokumentenstammverzeichnis in /var/www/ htdocs (Basisverzeichnis /var/www plus htdocs als Unterverzeichnis gemäß der lighttpd.conf-Datei), installiert jedoch die Standarddateien in /var/www/ lighttpd. Das ist inkonsistent, also müssen wir das Verzeichnis so umbenennen.
mv /var/www/lighttpd /var/www/htdocsRufen Sie jetzt Ihren Browser auf http://192.168.1.100 auf, und Sie sollten die folgende Seite sehen:

Das Standard-Dokumentenstammverzeichnis von Lighttpd ist /var/www/htdocs/ auf CentOS 7, und die Konfigurationsdatei ist /etc/lighttpd/lighttpd.conf.
4 PHP installieren
Wir können PHP in Lighttpd über PHP-FPM zum Laufen bringen, das wir so installieren:
yum -y install php-fpm lighttpd-fastcgiPHP-FPM ist ein Daemon-Prozess, der einen FastCGI-Server auf Port 9000 ausführt.
Öffnen Sie /etc/php-fpm.d/www.conf…
nano /etc/php-fpm.d/www.conf… und setzen Sie Benutzer und Gruppe auf lighttpd:
[...]
; Unix-Benutzer/-Gruppe der Prozesse
; Hinweis: Der Benutzer ist obligatorisch. Wenn die Gruppe nicht festgelegt ist, wird die Standardbenutzergruppe
; verwendet.
; RPM: apache gewählt, um auf einige Verzeichnisse als httpd zugreifen zu können
user = lighttpd
; RPM: Halten Sie eine Gruppe, die im Protokollverzeichnis schreiben darf.
group = lighttpd
[...] Erstellen Sie die Systemstartlinks für PHP-FPM und starten Sie es:
systemctl enable php-fpm.service
systemctl start php-fpm.serviceErhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.