Webserver Installation · 7 min read · Dec 18, 2025

So installieren Sie Lighttpd mit PHP, MariaDB und Let's Encrypt SSL auf Debian 10

Lighttpd ist ein kostenloser, Open-Source und Hochgeschwindigkeits-Webserver, der speziell für geschwindigkeitskritische Umgebungen entwickelt wurde. Er benötigt im Vergleich zu anderen Webservern wie Apache und Nginx einen geringen Speicherbedarf und ist besonders schnell für die Ausführung von AJAX-Anwendungen. Lighttpd ermöglicht es uns auch, Webanwendungen, die in anderen Programmiersprachen geschrieben sind, über die FastCGI-, SCGI- und CGI-Schnittstellen zu hosten. Lighttpd ist die beste Wahl für Sie, wenn Ihr Server unter Lastproblemen leidet.

In diesem Tutorial lernen wir, wie man Lighttpd auf Debian 10 mit PHP-FPM und MariaDB-Unterstützung installiert und den Webserver mit einem Let’s Encrypt SSL-Zertifikat sichert.

Anforderungen

  • Ein Server, der Debian 10 ausführt.
  • Ein Root-Passwort ist auf Ihrem Server eingerichtet.

Ich werde in diesem Tutorial den Domainnamen example.com verwenden. Ersetzen Sie example.com in allen Dateinamen und Konfigurationseinstellungen durch Ihren eigenen Domainnamen.

Erste Schritte

Bevor Sie beginnen, müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

apt-get update -y  
apt-get upgrade -y

Sobald Ihr Server aktualisiert ist, starten Sie Ihren Server neu, um die Änderungen anzuwenden.

Lighttpd installieren

Standardmäßig ist Lighttpd im Debian 10 Standard-Repository verfügbar. Sie können es installieren, indem Sie einfach den folgenden Befehl ausführen:

apt-get install lighttpd -y

Sobald die Installation abgeschlossen ist, starten Sie den Lighttpd-Dienst und aktivieren Sie ihn, damit er nach dem Systemneustart mit dem folgenden Befehl startet:

systemctl start lighttpd  
systemctl enable lighttpd

Sie können auch den Status von Lighttpd mit dem folgenden Befehl überprüfen:

systemctl status lighttpd

Sie sollten die folgende Ausgabe erhalten:

? lighttpd.service - Lighttpd Daemon
   Loaded: loaded (/lib/systemd/system/lighttpd.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2019-09-06 02:09:35 EDT; 29s ago
 Main PID: 4445 (lighttpd)
    Tasks: 1 (limit: 1138)
   Memory: 1.4M
   CGroup: /system.slice/lighttpd.service
           ??4445 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf

Sep 06 02:09:35 debian systemd[1]: Starting Lighttpd Daemon...
Sep 06 02:09:35 debian systemd[1]: Started Lighttpd Daemon.
Sep 06 02:09:36 debian systemd[1]: /lib/systemd/system/lighttpd.service:6: PIDFile= references path below legacy directory /var/run/, updating 
lines 1-12/12 (END)

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

MariaDB-Server installieren

Sie können den MariaDB-Server installieren, indem Sie den folgenden Befehl ausführen:

apt-get install mariadb-server mariadb-client -y

Sobald die Installation abgeschlossen ist, müssen Sie die MariaDB-Installation sichern. Sie können dies tun, indem Sie das folgende Skript ausführen:

mysql_secure_installation
Beantworten Sie alle Fragen wie unten gezeigt:
Ändern Sie das Root-Passwort? [Y/n] n
Anonyme Benutzer entfernen? [Y/n] Y
Root-Login aus der Ferne verbieten? [Y/n] Y
Testdatenbank und Zugriff darauf entfernen? [Y/n] Y
Berechtigungstabellen jetzt neu laden? [Y/n] Y

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

PHP und PHP-FPM installieren

Als Nächstes müssen Sie PHP, PHP-FPM und FastCGI auf Ihrem System installieren. Standardmäßig wird Debian 10 mit PHP-Version 7.3 ausgeliefert. Sie können es installieren, indem Sie einfach den folgenden Befehl ausführen:

apt-get install php php-cgi php-fpm php-mysql -y

Sobald alle Pakete installiert sind, müssen Sie die php.ini-Datei bearbeiten und cgi.fix_pathinfo auf 1 setzen. Sie können dies mit dem folgenden Befehl tun:

nano /etc/php/7.3/fpm/php.ini

Ändern Sie die folgende Zeile:

cgi.fix_pathinfo=1

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Standardmäßig verweist PHP auf den UNIX-Socket /var/run/php/php7.3-fpm.sock. Daher müssen Sie den PHP-FPM-Pool konfigurieren, damit PHP auf den TCP-Socket hört.

Sie können dies tun, indem Sie die Datei /etc/php/7.3/fpm/pool.d/www.conf bearbeiten:

nano /etc/php/7.3/fpm/pool.d/www.conf

Suchen Sie die folgende Zeile:

listen = /run/php/php7.3-fpm.sock

Und ersetzen Sie sie durch die folgende Zeile:

listen = 127.0.0.1:9000

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Dann starten Sie den PHP-FPM-Dienst neu, um die Konfigurationsänderungen anzuwenden:

systemctl restart php7.3-fpm

Als Nächstes müssen Sie die Datei 15-fastcgi-php.conf ändern:

nano /etc/lighttpd/conf-available/15-fastcgi-php.conf

Suchen Sie die folgenden Zeilen:

"bin-path" => "/usr/bin/php-cgi",
"socket" => "/var/run/lighttpd/php.socket",

Und ersetzen Sie sie durch die folgenden:

"host" => "127.0.0.1",
"port" => "9000",

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann sowohl das FastCGI- als auch das FastCGI-PHP-Modul mit den folgenden Befehlen:

lighty-enable-mod fastcgi  
lighty-enable-mod fastcgi-php

Schließlich starten Sie den Lighttpd-Dienst neu, um die Änderungen anzuwenden:

systemctl restart lighttpd

Lighttpd-Virtual Host erstellen

Als Nächstes müssen Sie eine neue Virtual-Host-Datei erstellen, um PHP mit Lighttpd zu testen. Sie können sie mit dem folgenden Befehl erstellen:

nano /etc/lighttpd/conf-available/example.com.conf

Fügen Sie die folgenden Zeilen hinzu:

$HTTP["host"] == "www.example.com" {
    server.document-root = "/var/www/html/"
    server.errorlog      = "/var/log/lighttpd/example.com-error.log"
}

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann den Virtual Host mit dem folgenden Befehl:

ln -s /etc/lighttpd/conf-available/example.com.conf /etc/lighttpd/conf-enabled/

Als Nächstes erstellen Sie eine Beispielindex.php-Datei im Lighttpd-Dokumentwurzelverzeichnis mit dem folgenden Befehl:

nano /var/www/html/index.php

Fügen Sie die folgende Zeile hinzu:

Speichern und schließen Sie die Datei. Ändern Sie dann den Besitz des Lighttpd-Dokumentwurzelverzeichnisses auf www-data mit dem folgenden Befehl:

chown -R www-data:www-data /var/www/html/

Schließlich starten Sie den Lighttpd-Dienst neu, um alle Konfigurationsänderungen anzuwenden:

systemctl restart lighttpd

Lighttpd mit Let’s Encrypt Free SSL sichern

Zuerst müssen Sie das Certbot-Tool installieren, um Ihren Webserver mit Let’s Encrypt zu sichern. Standardmäßig ist die neueste Version von Certbot nicht im Debian 10 Standard-Repository verfügbar.

Sie können das Certbot-Repository mit dem folgenden Befehl hinzufügen:

apt-get install software-properties-common  
add-apt-repository ppa:certbot/certbot

Als Nächstes aktualisieren Sie das Repository und installieren Certbot mit dem folgenden Befehl:

apt-get update -y  
apt-get install certbot -y

Als Nächstes erstellen Sie ein Let’s Encrypt-Zertifikat mit dem folgenden Befehl:

certbot certonly --webroot -w /var/www/html/ -d www.example.com

Sie werden aufgefordert, Ihre E-Mail-Adresse anzugeben und den Lizenzbedingungen zuzustimmen, wie unten gezeigt:

Speichern Sie das Debug-Protokoll unter /var/log/letsencrypt/letsencrypt.log
Ausgewählte Plugins: Authenticator webroot, Installer None
Geben Sie die E-Mail-Adresse ein (verwendet für dringende Erneuerungen und Sicherheitsbenachrichtigungen) (Geben Sie 'c' ein, um abzubrechen): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Bitte lesen Sie die Nutzungsbedingungen unter
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Sie müssen zustimmen, um sich beim ACME-Server unter
https://acme-v02.api.letsencrypt.org/directory zu registrieren
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)kzeptieren/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Wären Sie bereit, Ihre E-Mail-Adresse mit der Electronic Frontier Foundation, einem Gründungspartner des Let's Encrypt-Projekts und der gemeinnützigen Organisation, die Certbot entwickelt, zu teilen? Wir würden Ihnen gerne E-Mails über unsere Arbeit zur Verschlüsselung des Webs, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(J)a/(N)ein: Y

Sobald die Zertifikate erfolgreich heruntergeladen wurden, sollten Sie die folgende Ausgabe sehen:

WICHTIGE HINWEISE:
 - Herzlichen Glückwunsch! Ihr Zertifikat und die Kette wurden gespeichert unter:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Ihre Schlüsseldatei wurde gespeichert unter:
   /etc/letsencrypt/live/example.com/privkey.pem
   Ihr Zertifikat läuft am 2019-12-06 ab. Um eine neue oder angepasste
   Version dieses Zertifikats in Zukunft zu erhalten, führen Sie einfach erneut certbot
   aus. Um *alle* Ihre Zertifikate nicht-interaktiv zu erneuern, führen Sie
   "certbot renew" aus.
 - Wenn Ihnen Certbot gefällt, ziehen Sie bitte in Betracht, unsere Arbeit zu unterstützen:

   Spenden an ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Spenden an EFF:                    https://eff.org/donate-le

Als Nächstes müssen Sie sowohl das Zertifikat als auch den privaten Schlüssel in einer Datei kombinieren. Sie können dies mit dem folgenden Befehl tun:

cat /etc/letsencrypt/live/example.com/cert.pem /etc/letsencrypt/live/example.com/privkey.pem > /etc/letsencrypt/live/example.com/web.pem

Als Nächstes müssen Sie die Lighttpd-Virtual-Host-Datei bearbeiten und den Pfad zum Let’s Encrypt SSL-Zertifikat definieren.

Sie können dies mit dem folgenden Befehl tun:

nano /etc/lighttpd/conf-enabled/example.com.conf

Ändern Sie die Datei wie unten gezeigt:

$HTTP["host"] == "www.example.com" {
    server.document-root = "/var/www/html/"
}

$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/etc/letsencrypt/live/example.com/web.pem" # Kombiniertes Zertifikat
ssl.ca-file = "/etc/letsencrypt/live/example.com/chain.pem" # Root CA
server.name = "www.example.com" # Domainname ODER Virtueller Hostname
server.document-root = "/var/www/html/" # Dokumentwurzel
server.errorlog = "/var/log/lighttpd/example.com_error.log"
accesslog.filename = "/var/log/lighttpd/example.com_access.log"
}

$HTTP["scheme"] == "http" {
$HTTP["host"] == "www.example.com" { # HTTP-URL
url.redirect = ("/.*" => "https://www.example.com$0") # Umleitung HTTPS-URL
}
}

Speichern und schließen Sie die Datei. Starten Sie dann den Lighttpd-Dienst neu, um die Konfigurationsänderungen anzuwenden:

systemctl restart lighttpd

Greifen Sie auf die Lighttpd-Weboberfläche zu

Lighttpd ist installiert und mit PHP und PHP-FPM-Unterstützung konfiguriert. Jetzt ist es an der Zeit, es zu testen.

Öffnen Sie Ihren Webbrowser und geben Sie die URL https://www.example.com ein. Sie werden auf die folgende Seite weitergeleitet:

PHP auf Lighttpd

Die obige Seite zeigt an, dass PHP gut mit FastCGI funktioniert.

Fazit

Herzlichen Glückwunsch! Sie haben erfolgreich den Lighttpd-Webserver mit PHP-FPM und FastCGI-Unterstützung auf Debian 10 installiert und konfiguriert. Sie können jetzt problemlos Ihren eigenen Webserver hosten. Für weitere Informationen besuchen Sie die offizielle Dokumentationsseite von Lighttpd unter Lighttpd Doc.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.