GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie Lighttpd mit PHP, MariaDB und Lets Encrypt SSL unter Debian 10

Lighttpd ist ein kostenloser Open-Source-Hochgeschwindigkeits-Webserver, der speziell für geschwindigkeitskritische Umgebungen entwickelt wurde. Es erfordert im Vergleich zu anderen Webservern wie Apache und Nginx einen geringen Speicherbedarf und ist besonders schnell, um AJAX-Anwendungen auszuführen. Lighttpd ermöglicht es uns auch, Webanwendungen zu hosten, die in anderen Programmiersprachen geschrieben wurden, indem wir die FastCGI-, SCGI- und CGI-Schnittstellen verwenden. Lighttpd ist die beste Wahl für Sie, wenn Ihr Server Lastprobleme hat.

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

Anforderungen

  • Ein Server mit Debian 10.
  • Ein Root-Passwort wird für Ihren Server eingerichtet.

Ich werde in diesem Tutorial den Domänennamen example.com verwenden. Ersetzen Sie example.com unten 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 zu übernehmen.

Lighttpd installieren

Standardmäßig ist Lighttpd im Standard-Repository von Debian 10 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 nach dem Systemneustart mit dem folgenden Befehl:

systemctl start lighttpd
systemctl enable lighttpd

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

systemctl status lighttpd

Sie sollten die folgende Ausgabe erhalten:

? lighttpd.service - Lighttpd-Daemon Geladen:geladen (/lib/systemd/system/lighttpd.service; aktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Fr 2019-09-06 02:09:35 EDT; Vor 29 Sekunden Haupt-PID:4445 (lighthttpd) Aufgaben:1 (Grenze:1138) Speicher:1,4 MB CGroup:/system.slice/lighttpd.service ??4445 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd .confSep 06 02:09:35 debian systemd[1]:Lighttpd Daemon gestartet...Sep 06 02:09:35 debian systemd[1]:Lighttpd Daemon gestartet.Sep 06 02:09:36 debian systemd[1]:/lib/systemd/system/lighttpd.service:6:PIDFile=verweist auf den Pfad unterhalb des Legacy-Verzeichnisses /var/run/ und aktualisiert die Zeilen 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

Nach der Installation müssen Sie die MariaDB-Installation sichern. Sie können es sichern, indem Sie das folgende Skript ausführen:

mysql_secure_installation
Beantworten Sie alle Fragen wie unten gezeigt:Root-Passwort ändern? [J/n] n Anonyme Benutzer entfernen? [J/n] YRoot-Anmeldung aus der Ferne verbieten? [J/n] YTestdatenbank und Zugriff darauf entfernen? [J/n] YBerechtigungstabellen jetzt neu laden? [J/n] Ja

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

Installieren Sie PHP und PHP-FPM

Als nächstes müssen Sie PHP, PHP-FPM und FastCGI auf Ihrem System installieren. Standardmäßig wird Debian 10 mit der 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 Datei php.ini 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 zeigt PHP auf den UNIX-Socket /var/run/php/php7.3-fpm.sock. Sie müssen also den PHP-FPM-Pool so konfigurieren, dass 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 es durch die folgende Zeile:

listen =127.0.0.1:9000

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den PHP-FPM-Dienst neu, um die Konfigurationsänderungen zu übernehmen:

systemctl startet php7.3-fpm neu

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 Folgendes:

"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 FastCHI-PHP-Modul mit den folgenden Befehlen:

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

Starten Sie abschließend den Lighttpd-Dienst neu, um die Änderungen zu übernehmen:

systemctl starte lighttpd neu

Erstellen Sie den virtuellen Lighttpd-Host

Als nächstes müssen Sie eine neue virtuelle Hostdatei erstellen, um PHP mit Lighttpd zu testen. Sie können es 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 virtuellen Host mit dem folgenden Befehl:

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

Erstellen Sie als Nächstes mit dem folgenden Befehl eine index.php-Beispieldatei im Lighttpd-Dokumentenstammverzeichnis:

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-Dokumentstammverzeichnisses mit dem folgenden Befehl in www-data:

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

Starten Sie abschließend den Lighttpd-Dienst neu, um alle Konfigurationsänderungen zu übernehmen:

systemctl starte lighttpd neu

Sicheres Lighttpd mit Let's Encrypt Free SSL

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 Standard-Repository von Debian 10 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

Aktualisieren Sie als Nächstes das Repository und installieren Sie Certbot mit dem folgenden Befehl:

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

Erstellen Sie als Nächstes 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 die Lizenzbedingungen wie unten gezeigt zu akzeptieren:

Speichern des Debug-Protokolls in /var/log/letsencrypt/letsencrypt.logAusgewählte Plugins:Authenticator webroot, Installer NoneGeben Sie die E-Mail-Adresse ein (wird für dringende Erneuerungs- und Sicherheitshinweise verwendet) (Geben Sie „c“ zum Abbrechen ein):[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)gree/(C)cancel: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 möchten Ihnen E-Mails über unsere Arbeit zur Verschlüsselung des Internets, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(N)o:Y

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

WICHTIGE HINWEISE:- Herzlichen Glückwunsch! Ihr Zertifikat und Ihre 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 ab am 2019-12-06. Um in Zukunft eine neue oder optimierte Version dieses Zertifikats zu erhalten, führen Sie einfach certbot erneut aus. Um *all* Ihre Zertifikate nicht interaktiv zu erneuern, führen Sie „certbot renew“ aus. Wenn Sie Certbot mögen, ziehen Sie bitte in Betracht, unsere Arbeit zu unterstützen, indem Sie:Spende an ISRG / Let’s Encrypt:https://letsencrypt.org/donate Spende 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 virtuelle Lighttpd-Hostdatei bearbeiten und den SSL-Zertifikatspfad von Let's Encrypt 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" # Combined Certificatessl.ca-file ="/etc/letsencrypt/live/example.com/chain.pem " # Root CAserver.name ="www.example.com" # Domänenname ODER virtueller Host Nameserver.document-root ="/var/www/html/" # Document Rootserver.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 URLurl.redirect =("/.*" => "https://www.example.com$0") # Umleitungs-HTTPS-URL}}

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

systemctl starte lighttpd neu

Zugriff auf die Lighttpd-Webschnittstelle

Lighttpd wird mit PHP- und PHP-FPM-Unterstützung installiert und 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:

Die obige Seite zeigt, dass PHP gut mit FastCGI zusammenarbeitet.

Schlussfolgerung

Herzliche Glückwünsche! Sie haben den Lighttpd-Webserver mit PHP-FPM- und FastCGI-Unterstützung auf Debian 10 erfolgreich installiert und konfiguriert. Sie können jetzt ganz einfach Ihren eigenen Webserver hosten. Weitere Informationen finden Sie auf der offiziellen Lighttpd-Dokumentationsseite unter Lighttpd Doc.


Debian
  1. Installieren Sie Automad CMS mit Nginx und Lets Encrypt SSL auf Debian 10

  2. So installieren Sie Tiki Wiki mit Apache und Lets encrypt SSL auf Debian 10

  3. So installieren Sie Automad CMS mit Apache und Lets encrypt unter Debian 10

  4. So installieren Sie das ElkArte-Forum mit Apache und Lets Encrypt unter Debian 10

  5. So installieren Sie OpenCart mit Nginx und Lets Encrypt unter Debian 10

So installieren Sie Etherpad mit Nginx und SSL unter Debian 11

So installieren Sie Shopware mit NGINX und Lets encrypt unter Debian 9

So installieren Sie MyBB Forum mit Nginx und Lets Encrypt unter Debian 10

So installieren Sie Wekan Kanban mit Nginx und Lets Encrypt SSL unter Debian 10

Installieren Sie Lighttpd mit PHP FPM und MariaDB (LLMP) unter Debian 9

So installieren Sie Lighttpd mit PHP und MariaDB unter Ubuntu 15.04