Der FastCGI Process Manager (FPM) ist eine Alternative zur FastCGI-Konfiguration mit mehreren Verbesserungen. Dies ist nützlich für Websites mit hoher Auslastung. Dieses Tutorial hilft Ihnen bei der Installation und Konfiguration von PHP-FPM mit Nginx auf Ihrem Debian 10 Buster Linux-System.
Voraussetzungen
Sie müssen über SSH-Zugriff auf das Debian 10-System mit Sudo-Berechtigungen verfügen.
Nginx-Installation
Nginx-Pakete sind unter Standard-Repositories verfügbar. SSH zu Ihrem Debian 10-System mit sudo-Berechtigungskonten und installieren Sie den Nginx-Webserver aus dem offiziellen Repository.
sudo apt update sudo apt install nginx
PHP-Installation
Für die PHP-Installation empfehlen wir, das PPA von Ondřej Surý zu verwenden, das die neuesten PHP-Versionen für Debian-Systeme bereitstellt. Verwenden Sie die folgenden Befehle, um den PPA zu Ihrem System hinzuzufügen.
wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add - sudo echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list
Installieren Sie dann die neueste PHP-Version, die am Tag der Erstellung dieses Tutorials verfügbar war. Führen Sie einfach die folgenden Befehle zur Installation von PHP- und PHP-FPM-Paketen aus.
Hinweis:- Wenn Sie PHP-FPM verwenden. Alle PHP-Modulkonfigurationen befinden sich unter /etc/php/7.3/fpm/ Verzeichnis. Sie können mehr über das Aktivieren/Deaktivieren von PHP-Modulen lesen.apt update sudo apt install php php-fpm
Nach der Installation der oben genannten Pakete wird der Dienst php7.3-fpm automatisch gestartet. Sie können sich vergewissern, indem Sie den folgenden Befehl auf dem Terminal eingeben.
sudo systemctl status php7.3-fpm ● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-12-03 10:01:54 UTC; 24min ago Docs: man:php-fpm7.3(8) Main PID: 9883 (php-fpm7.3) Status: "Processes active: 0, idle: 2, Requests: 3, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 3587) Memory: 14.2M CGroup: /system.slice/php7.3-fpm.service ├─9883 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf) ├─9884 php-fpm: pool www └─9885 php-fpm: pool www Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Starting The PHP 7.3 FastCGI Process Manager... Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Started The PHP 7.3 FastCGI Process Manager.
Nginx-Konfiguration
Lassen Sie uns einen virtuellen Nginx-Host erstellen, der mit FPM/FastCGI ausgeführt wird. Für dieses Tutorial verwenden wir den standardmäßigen VirtualHost. Bearbeiten Sie die Konfigurationsdatei des VirtualHost-Hosts in einem Texteditor. Sie können gemäß Ihren Anforderungen einen neuen VirtualHost erstellen, stellen Sie also sicher, dass Sie jeden neuen VirtualHost aktivieren.
sudo vim /etc/nginx/sites-available/example.com
Verwenden Sie die untenstehende grundlegende virtuelle Nginx-Hostkonfiguration mit PHP-FPM-Einstellungen. Aktualisieren Sie die Konfiguration wie folgt.
Apache
123456789101112131415 | server {listen 80; root /var/www/html; index index.php index.html index.htm; server_name example.com; Ort / { Versuchsdateien $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }} |
Speichern Sie Ihre Änderungen in der Konfigurationsdatei und erstellen Sie einen Link zum standortaktivierten Verzeichnis.
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
Starten Sie dann den Nginx-Dienst neu, um die Änderungen neu zu laden.
sudo systemctl restart nginx.service
Testaufbau
Erstellen Sie ein PHP-Skript mit phpinfo() Funktion und legen Sie es in Ihrem Server-Dokumentenstammverzeichnis ab. Verwenden Sie dazu den folgenden Befehl.
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Greifen Sie nun auf die info.php mit der Server-IP-Adresse (für den standardmäßigen VirtualHost) für Ihre konfigurierte Domäne in Nginx VirtualHost zu.
http://localhost/info.php
Schlussfolgerung
Alles erledigt. Sie haben den Nginx-Webserver erfolgreich mit PHP-FPM auf Ihrem Debian 10 (Buster) Linux konfiguriert. Ihr Server ist bereit, Websites zu hosten.