So installieren Sie Apache mit PHP-FPM auf CentOS 8

So installieren Sie Apache mit PHP-FPM auf CentOS 8

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

Voraussetzungen

  • Shell -Zugriff auf das CentOS 8 -System mit sudo privileges Konto.
  • Füllen Sie die erste Server -Setup für neu installierte Systeme aus.

Schritt 1 - Apache installieren

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

sudo dnf update sudo dnf install httpd httpd-tools mod_ssl 

Das MOD_SSL -Paket bietet der Funktionalität, ein SSL -Zertifikat für sichere HTTP zu verwenden. Aktivieren Sie nach der Installation den HTTPD -Dienst und starten Sie.

sudo systemctl aktivieren httpd sudo systemctl starten httpd 

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 die Konfigurationsdatei von PHP-FPM für Apache:

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

Nehmen Sie die Änderungen wie unten vor. Die neuesten Versionen von Apache 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. 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 = Apache Group = Apache Listen.erlaubt_clients = 127.0.0.Ich hör zu.Besitzer = Apache hören.Gruppe = Apache hören.Modus = 0660 PM = Dynamik
1234567891011; Hören = 127.0.0.1: 9000Listen =/run/php-fpm/www.SOCK user = apachegroup = apache hören.erlaubt_clients = 127.0.0.1Listen.Besitzer = Apachelisten.Gruppe = Apachelisten.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 - Apache VirtualHost erstellen

Jetzt ist es Zeit, Apache so zu konfigurieren, dass PHP-FPM zur Verarbeitung von PHP-Dateien verwendet wird. Hier sind zwei Optionen, entweder verwenden Sie FPM als Standard für alle virtuellen Hosts oder können den virtuellen Host speziell für die Verwendung von FPM konfigurieren. Auf diese Weise werden andere virtuelle Hosts nicht betroffen sein.

In diesem Beispiel konfiguriere ich FPM nur für einen bestimmten virtuellen Host. So bearbeitete Konfigurationsdatei in Texteditor:

sudo vim/etc/httpd/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.

Serveradmin [email protected] documentroot/var/www/html subername Beispiel.com Serveralias www.Beispiel.Com # Proxy Deklaration # Wir müssen hier einen Parameter deklarieren (egal, welcher) oder # den Proxy nicht im Voraus registriert ProxySet disablerese = Off # Hinweis: Wenn Sie PHP-FPM so konfigurieren, dass sie die "PM = PM =" verwenden, konfigurieren Sie die "PM = OnDemand "#Then verwenden" proxySet disablereu.Verursacher.Protokollieren Sie CustomLog -Protokolle/Beispiel.Auszug.log kombiniert
12345678910111213141516171819202122232425 Serveradmin [email protected] documentroot/var/www/html subername Beispiel.com Serveralias www.Beispiel.Com # Proxy -Erklärung # Wir müssen hier einen Parameter deklarieren (spielt keine Rolle) oder # Es wird den Proxy nicht im Voraus registrieren. Verwenden Sie "ProxySet disablereuse = on" SetHandler Proxy: FCGI: // Php-FPM FehlerLog -Protokolle/Beispiel.Verursacher.Protokollieren Sie CustomLog -Protokolle/Beispiel.Auszug.log kombiniert

Speichern Sie die virtuelle Host -Konfigurationsdatei und laden Sie Apache neu, um Änderungen anzuwenden.

sudo systemctl starten Sie HTTPD neu starten 

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 Apache -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 in Apache VirtualHost.

http: // localhost/info.Php 

Abschluss

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