So installieren Sie Nginx mit PHP-FPM auf CentOS 8

So installieren Sie Nginx mit PHP-FPM auf CentOS 8

Die übliche Möglichkeit, PHP mit Nginx auszuführen, ist das FastCGI -Modul. Der PHP-FPM (FASTCGI Process Manager) erhöht die Leistung Ihrer Nginx/PHP-Umgebung dramatisch. Dies ist also nützlich für Websites mit hohem Ladung. In diesem Tutorial können Sie PHP-FPM mit Nginx auf CentOS 8 und RHEL 8 Linux-System konfigurieren.

Voraussetzungen

  • Das neu installierte System wird empfohlen, das erste Server -Setup zu befolgen.
  • Shell -Zugriff auf das CentOS 8 -System mit sudo privileges Konto.

Schritt 1 - Installieren Sie Nginx

Die Nginx -Pakete sind unter dem Standard -Appstream -Repository verfügbar. Sie können einfach den DNF -Cache aktualisieren und die NGINX -Webserverpakete mit den folgenden Befehlen installieren.

sudo dnf aktualisieren sudo dnf install nginx 

Nach der Installation von Paketen startet der NGINX-Dienst und ermöglicht den NGINX-Service auch, den Systemstart automatisch zu starten.

sudo systemctl aktivieren nginx sudo systemctl start nginx 

Schritt 2 - Installieren Sie PHP mit PHP -FPM

Das Remi -Repository enthält die neuesten PHP -Pakete für das CentOS 8 Linux -System. Zuallererst müssen Sie das Remi -Repository zu Ihrem System hinzufügen. Führen Sie einfach den folgenden Befehl aus, um das Repository hinzuzufügen.

sudo dnf install dnf-utils http: // rpms.Remirepo.net/Enterprise/remi-release-8.Drehzahl 

Aktivieren Sie dann das erforderliche DNF -Modul für die PHP -Installation. Hier aktivieren wir das Modul für die Installation von PHP 7.4. Sie können dies in Php 7 ändern.3 oder Php 7.2 Gemäß Ihren Anforderungen.

Sudo DNF-Modul Reset PHP Sudo DNF-Modul aktivieren PHP: RMI-7.4 

Installieren Sie nun den PHP in Ihrem System. Da wir FastCGI Process Manager (FPM) für dieses Setup verwenden wollen. Installieren Sie also auch das PHP-FPM-Paket.

sudo dnf update sudo dnf installieren Sie PHP-F-FPM PHP-GD PHP-MYSQLND 

Möglicherweise benötigen Sie möglicherweise auch einige PHP -Module. Installieren Sie sie daher, bevor Sie als nächstes gehen. Aktivieren Sie nach Abschluss der PHP-Installation den PHP-FPM-Service und starten Sie ihn.

sudo systemctl aktivieren php-fpm sudo systemctl starten Sie PHP-FPM 

Stellen Sie sicher, dass der PHP-FPM-Dienst ausgeführt wird.

sudo systemctl Status PHP-FPM ● PHP-FPM.Service - Der PHP FASTCGI -Prozessmanager geladen: geladen (/usr/lib/systemd/system/php -fpm.Service; Behinderte; Anbieter Voreinstellung: Behindert) aktiv: aktiv (laufend) seit Mon 2019-12-09 21:44:57 PST; 1H 24 Minuten Vorhaupt PID: 29280 (PHP-FPM) Status: "Prozesse aktiv: 0, Leerlauf: 5, Anfragen: 3, langsam: 0, Verkehr: 0REQ/SEC" Aufgaben: 6 (Grenze: 10321) Speicher: 24.6m Cgroup: /System.Slice/PHP-FPM.Service ├─29280 PHP-FPM: Hauptprozess (/etc/php-fpm.conf) ├─29281 PHP-FPM: Pool www ├─29282 PHP-FPM: Pool www ├─29283 PHP-FPM: Pool www ├─29284 PHP-FPM: Pool www └─29285 PHP-FPM: Pool www 09 21 : 44: 57 Tecadmin.Beispiel.COM SYSTEMD [1]: Starten Sie den PHP Fastcgi Process Manager… Dez. 09. Dezember 21:44:57 Tecadmin.Beispiel.COM SYSTEMD [1]: Start den PHP FastCGI Process Manager. 

Schritt 3 - Konfigurieren Sie PHP -FPM

In diesem Schritt haben Sie alle erforderlichen Pakete installiert. Beginnen wir den Konfigurationsprozess. Bearbeiten Sie zunächst PHP-FPM-Konfigurationsdatei:

sudo vim /etc /php-fpm.D/www.Conf 

Nehmen Sie die Änderungen wie unten vor. Die neuesten Versionen von Nginx können mit einem Proxy eine Verbindung zum Socket herstellen. Stellen Sie also sicher, dass Hören auf eine Socket -Datei eingestellt ist.

Setzen Sie dann Benutzer und gruppieren Sie dieselbe wie der NGINX -Server mithilfe. Wenn Sie FPM aus einem Remote -System ändern müssen.erlaubt_clients zu lan ip anstelle von 127.0.0.1.

; Hören = 127.0.0.1: 9000 Hören =/run/php-fpm/www.SOCK User = www-data Group = www-data Hören Sie.erlaubt_clients = 127.0.0.Ich hör zu.Besitzer = www-data hören.Gruppe = www-data hören.Modus = 0660 PM = Dynamik
1234567891011; Hören = 127.0.0.1: 9000Listen =/run/php-fpm/www.SOCK User = www-datagroup = www-data Hören Sie.erlaubt_clients = 127.0.0.1Listen.Besitzer = www-datalisten.Gruppe = www-datalisten.Modus = 0660pm = Dynamik

Nachdem Änderungen vorgenommen haben, starten Sie den PHP-FPM-Dienst neu, um Änderungen anzuwenden.

sudo systemctl starten Sie PHP-FPM neu 

Schritt 4 - Nginx Server -Block erstellen

Erstellen Sie nun einen Serverblock in NGINX für Ihre Domäne und konfigurieren Sie ihn so, dass PHP-FPM für die Verarbeitung von PHP-Dateien verwendet wird. Erstellen Sie eine Server -Block -Datei und bearbeiten Sie in einem Texteditor:

sudo vim/etc/nginx/conf.d/Beispiel.com.Conf 

Jetzt wurden die Proxy -Konfiguration mit einer Socket -Datei hinzugefügt. Konfigurierte auch das gesamte PHP -Skript, um FPM -Handler für die Ausführung zu verwenden.

Server Listen 80 default_server; server_name Beispiel.com www.Beispiel.com; root/var/www/html; # Konfigurationsdateien für den Standardserverblock laden. Inhaftieren/etc/nginx/Standardeinstellung.D/*.conf; Ort / Ort ~* \.Php $ # mit Php-FPM UNIX-Sockeln FASTCGI_PASS UNIX:/Run/PHP-FPM/www.Socke; FASTCGI_PARAMS einschließen; fastcgi_param script_filename $ document_root $ fastcgi_script_name; fastcgi_param script_name $ fastcgi_script_name;
12345678910111213141516171819Server Listen 80 default_server; server_name Beispiel.com www.Beispiel.com; root/var/www/html; # Konfigurationsdateien für den Standardserverblock laden. Inhaftieren/etc/nginx/Standardeinstellung.D/*.conf; Ort / Ort ~* \.Php $ # mit Php-FPM UNIX-Sockeln FASTCGI_PASS UNIX:/Run/PHP-FPM/www.Socke; FASTCGI_PARAMS einschließen; fastcgi_param script_filename $ document_root $ fastcgi_script_name; fastcgi_param script_name $ fastcgi_script_name;

Speichern Sie die Server -Block -Konfigurationsdatei und starten Sie den NGINX -Dienst neu, um Änderungen anzuwenden.

sudo systemctl starten nginx neu 

Schritt 5 - Aktivieren Sie die Firewall -Regeln

Ihr Server ist bereit, die Anwendung zu bedienen. Wenn in Ihrem System eine Firewall aktiviert ist, stellen Sie sicher, dass HTTP -Ports für den Zugriff von Remote -Systemen geöffnet sind.

Die folgenden Befehle öffnen die erforderlichen Ports für Sie.

sudo firewall-cmd --zone = public --permanent --add-service = http sudo firewall-cmd --zone = public --permanent --add-service = https sudo firewall-cmd-Reload 

Schritt 6 - Testeinrichtung

Alles erledigt. Um die Umgebung zu testen, erstellen Sie ein PHP -Skript mit phpinfo () Funktion. Platzieren Sie diese Datei in Ihr Server -Dokumentstamm. Verwenden Sie den Befehl unten, um dies zu tun.

Echo "">/var/www/html/Info.Php 

Greifen Sie dann auf Informationen zu.PHP Verwenden der Server -IP -Adresse (für Standard virtualHost) für Ihre konfigurierte Domäne im Nginx -Serverblock.

http: // localhost/info.Php 

Schieben Sie die Seite herunter und überprüfen Sie den Wert von $ _server ['server_software'] im Abschnitt PHP -Variablen. Dadurch werden Ihnen der auf dem Weg ausgeführte Web -Server -Name angezeigt.

Abschluss

Sie haben erfolgreich einen Nginx mit PHP-FPM auf Ihrem CentOS 8 oder RHEL 8 Linux-System konfiguriert. Sie können jetzt eine Website von Ihrem Server von Ihrem Server hosten.