Aktivieren und Überwachen des PHP-FPM-Status in Nginx
Es wird häufig in der verwendet LEMP ((Linux Nginx MySQL / MariaDB PHP) Stapel; Nginx Verwendet PHP FastCGI zum Servieren dynamisch HTTP Inhalte in einem Netzwerk. Es wird verwendet, um Millionen von Menschen zu dienen PHP Anfragen für Hunderte von Websites auf Webservern im Internet.
Lesen Sie auch: So aktivieren Sie die NGINX-Statusseite
Eine der nützlichen Funktionen von PHP-Fpm ist die integrierte Statusseite, mit deren Hilfe Sie den Zustand überwachen können. In diesem Artikel zeigen wir, wie Sie das aktivieren PHP-FPM Statusseite unter Linux.
So aktivieren Sie die PHP-FPM-Statusseite unter Linux
Öffnen Sie zuerst die PHP-Fpm Konfigurationsdatei und aktivieren Sie die Statusseite wie gezeigt.
$ sudo vim /etc/php-fpm.d/www.conf OR $ sudo vim /etc/php/7.2/fpm/pool.d/www.conf #for PHP versions 5.6, 7.0, 7.1
Suchen und kommentieren Sie die Variable in dieser Datei
pm.status_path = /status
wie im Screenshot gezeigt.
Speichern Sie die Änderungen und beenden Sie die Datei.
Überprüfen Sie als nächstes, ob die PHP-FPM Konfigurationsdatei für Fehler, indem Sie den folgenden Befehl ausführen.
$ sudo php-fpm -t OR $ sudo php7.2-fpm -t
Starten Sie dann die PHP-FPM Service, um die letzten Änderungen anzuwenden.
$ sudo systemctl restart php-fpm OR $ sudo systemctl restart php7.2-fpm
Bearbeiten Sie als Nächstes Ihre Standardeinstellung Serverblock ((virtueller Host) Konfigurationsdatei und fügen Sie die Standortblock unten drin. Auf dem Testsystem lautet die Konfigurationsdatei des Standardserverblocks beispielsweise /etc/nginx/conf.d/default.conf, für die Website test.lab.
$ sudo vim /etc/nginx/conf.d/default.conf
Hier ist der Standortblock hinzugefügt werden. In dieser Konfiguration haben wir nur Zugriff auf zugelassen PHP-FPM Prozessstatus innerhalb des localhost mithilfe der Direktive erlauben 127.0.0.1 aus Sicherheitsgründen.
location ~ ^/(status|ping)$ { allow 127.0.0.1; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php7.2-fpm.sock; }
Speichern Sie die Datei und schließen Sie sie.
Starten Sie dann die Nginx Server, um die oben genannten Änderungen anzuwenden.
$ sudo systemctl restart nginx
Öffnen Sie nun einen Browser und geben Sie die URL ein http://test.lab/status
um Ihren PHP-FPM-Prozessstatus anzuzeigen.
Alternativ können Sie das Curl-Programm wie folgt verwenden, wobei die -L
Flag gibt den Speicherort der Seite an.
$ curl -L http://test.lab/status
Standardmäßig druckt die Statusseite nur eine Zusammenfassung oder einen Kurzstatus aus. Um den Status für jeden Poolprozess anzuzeigen, übergeben Sie “voll” in der Abfragezeichenfolge zum Beispiel:
http://www.foo.bar/status?full
Sie können das Ausgabeformat (JSON, HTML oder XML) wie gezeigt definieren.
http://www.foo.bar/status?json&full http://www.foo.bar/status?html&full http://www.foo.bar/status?xml&full
Nachfolgend sind die in der zurückgegebenen Werte aufgeführt PHP-Fpm vollständiger Status für jeden Prozess:
- pid – PID des Prozesses.
- Zustand Prozessstatus (Leerlauf, Betrieb usw.).
- Startzeit – Datum und Uhrzeit des Prozessbeginns.
- Start seit – Anzahl der Sekunden seit dem Start des Prozesses.
- Anfragen – Anzahl der Anfragen, die der Prozess bearbeitet hat.
- Anforderungsdauer – Dauer in µs der Anfragen.
- Anforderungsmethode – Anforderungsmethode (GET, POST usw.).
- URI anfordern – URI mit der Abfragezeichenfolge anfordern.
- Inhaltslänge – Inhaltslänge der Anfrage (nur mit POST).
- Benutzer – Benutzer (PHP_AUTH_USER) (oder ‘-‘, falls nicht festgelegt).
- Skript – Hauptskript aufgerufen (oder ‘-‘ wenn nicht gesetzt).
- letzte Anfrage CPU -% cpu die zuletzt verbrauchte Anforderung (beachten Sie, dass es immer 0 ist, wenn sich der Prozess nicht im Ruhezustand befindet).
- Speicher der letzten Anforderung – Maximale Speichermenge, die die letzte Anforderung verbraucht hat (es ist immer 0, wenn sich der Prozess nicht im Ruhezustand befindet).
Das war es fürs Erste! In diesem Artikel haben wir erklärt, wie Sie das aktivieren PHP-Fpm Statusseite unter Nginx-Webserver. Verwenden Sie das unten stehende Feedback-Formular, um Ihre Gedanken mit uns zu teilen.