Tutorial

So installieren Sie Linux, Nginx, MySQL, PHP (LEMP) Stack unter CentOS 8 [Schnellstart]

NginxCentOSPHPMariaDBLEMPCentOS 8

Einführung

In diesem Tutorial installieren Sie einen LEMP-Stack auf einem CentOS 8-Server. Obwohl MySQL über die Standard-Repositorys in CentOS 8 verfügbar ist, beschreibt dieser Leitfaden den Prozess der Einrichtung eines LEMP-Stacks mit MariaDB als Datenbank-Management-System.

Eine detailliertere Version dieses Tutorials mit weiteren Erklärungen zu jedem Schritt finden Sie unter So installieren Sie Linux, Nginx, MySQL, PHP (LEMP) Stack unter CentOS 8.

Voraussetzungen

Um diesem Leitfaden zu folgen, müssen Sie auf einen CentOS-8-Server als sudo-Benutzer zugreifen.

Schritt 1 – Installation von Nginx

Installieren Sie das nginx-Paket mit:

  • sudo dnf install nginx

Wenn die Installation abgeschlossen ist, müssen Sie den folgenden Befehl ausführen, um den Server zu aktivieren und zu starten:

  • sudo systemctl start nginx

Wenn firewalld aktiv ist, müssen Sie den folgenden Befehl ausführen, um den externen Zugriff auf Port 80 (HTTP) zu gestatten:

  • sudo firewall-cmd --permanent --add-service=http

Laden Sie die Firewall-Konfiguration neu, damit die Änderungen wirksam werden:

  • sudo firewall-cmd --reload

Nachdem die neue Firewall-Regel hinzugefügt wurde, können Sie testen, ob der Server läuft, indem Sie auf die öffentliche IP-Adresse des Servers oder den Domänennamen von Ihrem Web-Browser aus zugreifen. Sie sehen in etwa folgende Seite:

Standard Nginx Page CentOS 8

Schritt 2 – Installation von MariaDB

Wir installieren jetzt MariaDB, eine gemeinschaftlich entwickelte Kopie des Original-MySQL-Servers von Oracle. Um diese Software zu installieren, führen Sie Folgendes aus:

  • sudo dnf install mariadb-server

Wenn die Installation abgeschlossen ist, aktivieren und starten Sie den MariaDB-Server mit:

  • sudo systemctl start mariadb

Um die Sicherheit Ihres Datenbank-Servers zu verbessern, wird empfohlen, ein Sicherheitsskript auszuführen, in das MariaDB bereits vorinstalliert ist. Starten Sie das interaktive Skript mit:

  • sudo mysql_secure_installation

Mit der ersten Eingabeaufforderung werden Sie aufgefordert, das aktuelle Datenbank-Root-Passwort einzugeben. Und weil Sie MariaDB gerade installiert und noch keine Konfigurationsänderungen vorgenommen haben, ist dieses Passwort leer. Drücken Sie also bei der Eingabeaufforderung einfach die EINGABETASTE.

Bei der nächsten Eingabeaufforderung werden Sie gefragt, ob Sie ein Datenbank-Root Passwort einrichten möchten. Und weil MariaDB eine spezielle Authentifizierungsmethode für den Root-Benutzer verwendet, die typischerweise sicherer ist als ein Passwort, müssen Sie das jetzt nicht einrichten. Geben Sie N ein und drücken Sie dann die EINGABETASTE.

Von dort aus können Sie Y und dann die EINGABETASTE drücken, um die Standardeinstellungen für alle nachfolgenden Fragen zu akzeptieren.

Schritt 3 – Installation von PHP-FPM

Um die php-fpm- und php-mysql-Pakete zu installieren, führen Sie Folgendes aus:

  • sudo dnf install php-fpm php-mysqlnd

Wenn die Installation abgeschlossen ist, müssen Sie die Datei /etc/php-fpm.d/www.conf bearbeiten, um ein paar Einstellungen anzupassen. Wir installieren nano, um das Bearbeiten dieser Dateien zu erleichtern:

  • sudo dnf install nano

Öffnen Sie dann die Konfigurationsdatei /etc/php-fpm.d/www.conf mit nano oder Ihrem bevorzugten Textbearbeitungsprogramm:

  • sudo nano /etc/php-fpm.d/www.conf

Suchen Sie nach den Anweisungen user und group. Wenn Sie nano verwenden, können Sie auf STRG+W drücken, um in der offenen Datei nach diesen Begriffen zu suchen. Vergewissern Sie sich, dass Sie beide Werte von apache auf nginx ändern:

/etc/php-fpm.d/www.conf
…
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

Speichern und schließen Sie die Datei, wenn die Bearbeitung abgeschlossen ist.

Zur Aktivierung und zum Start des php-fpm-Dienstes führen Sie Folgendes aus:

  • sudo systemctl start php-fpm

Starten Sie schließlich den Nginx-Webserver neu, damit er die Konfigurationsdateien lädt, die durch die php-fpm-Installation erstellt wurden:

  • sudo systemctl restart nginx

Schritt 4 – Testen Sie PHP mit Nginx

In CentOS 8 erstellt die Standard php-fpm-Installation automatisch Konfigurationsdateien, die Ihrem Nginx-Webserver erlauben, .php-Dateien im Standard-Dokumentstamm zu bearbeiten, der sich unter /usr/share/nginx/html befindet. Sie müssen keine Änderungen der Nginx-Konfiguration vornehmen, damit PHP korrekt in Ihrem Webserver funktioniert.

Wir müssen lediglich den Standard-Eigentümer und die Gruppe im Nginx-Dokumentstamm ändern, damit Sie Dateien an diesem Speicherort mit Ihrem normalen Systembenutzer ohne Rootberechtigung erstellen und ändern können.

  • sudo chown -R sammy.sammy /usr/share/nginx/html/

Erstellen Sie eine neue PHP Datei namens info.php im Verzeichnis /usr/share/nginx/html:

  • nano /usr/share/nginx/html/info.php

Der folgende PHP-Code zeigt Informationen über die aktuelle PHP-Umgebung, die auf dem Server läuft:

/usr/share/nginx/html/info.php
<?php

phpinfo();

Kopieren Sie diesen Inhalt in Ihre info.php-Datei und vergessen Sie nicht, sie zu speichern, wenn Sie fertig sind.

Jetzt können wir testen, ob unser Webserver den Inhalt korrekt anzeigt, der durch ein PHP-Skript erstellt wurde. Gehen Sie zu Ihrem Browser und greifen Sie auf Ihren Server-Hostnamen oder die IP-Adresse zu, gefolgt von /info.php:

http://server_host_or_IP/info.php

Sie sehen eine Seite, die so ähnlich wie die folgende aussieht:

CentOS 8 Standard-PHP-Info

Relevante Tutorials

Hier sehen Sie Links zu detaillierteren Leitfäden, die in Verbindung mit diesem Tutorial stehen:

Creative Commons License