Wéi aktivéiert a Monitor PHP-FPM Status an Nginx


PHP-FPM (FastCGI Process Manager) ass eng alternativ PHP FastCGI Implementatioun déi mat enger Zuel vun Extra Features kënnt nëtzlech fir Websäite vun all Gréisst, besonnesch Siten déi héich Traffic kréien.

Et gëtt allgemeng am LEMP (Linux Nginx MySQL/MariaDB PHP) Stack benotzt; Nginx benotzt PHP FastCGI fir dynamesch HTTP Inhalt op engem Netzwierk ze déngen. Et gëtt benotzt fir Millioune PHP Ufroe fir Honnerte vu Websäiten op Webserver um Internet ze déngen.

Ee vun den nëtzlechen Features vu php-fpm ass déi agebaute Status Säit, déi Iech hëllefe kann seng Gesondheet iwwerwaachen. An dësem Artikel wäerte mir weisen wéi Dir d'PHP-FPM Status Säit op Linux aktivéiert.

Wéi aktivéiert PHP-FPM Status Säit am Linux

Éischt öffnen d'php-fpm Konfiguratiounsdatei an aktivéiert d'Status Säit wéi gewisen.

$ 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

An dësem Fichier, fann an decommentéieren d'Variabel pm.status_path = /status wéi am Screenshot gewisen.

Späichert d'Ännerungen a gitt d'Datei aus.

Als nächst, kontrolléiert datt d'PHP-FPM Konfiguratiounsdatei fir Fehler gëtt andeems Dir de Kommando hei drënner leeft.

$ sudo php-fpm -t
OR
$ sudo php7.2-fpm -t

Da starten de PHP-FPM Service nei fir déi rezent Ännerungen anzesetzen.

$ sudo systemctl restart php-fpm
OR
$ sudo systemctl restart php7.2-fpm

Als nächst, ännert Är Standard Serverblock (virtuellen Host) Konfiguratiounsdatei a füügt de Standortblock drënner derbäi. Zum Beispill am Testsystem ass d'Konfiguratiounsdatei vum Standard Serverblock /etc/nginx/conf.d/default.conf, fir de Site test.lab.

$ sudo vim /etc/nginx/conf.d/default.conf 

Hei ass de Standuertblock fir derbäi ze ginn. An dëser Configuratioun hu mir nëmmen Zougang zum PHP-FPM Prozessstatus am localhost erlaabt mat der Direktiv erlaabt 127.0.0.1 aus Sécherheetsgrënn.

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;
}

Späichert d'Datei a maach se zou.

Da starten den Nginx Server nei fir déi uewe genannte Verännerungen anzesetzen.

$ sudo systemctl restart nginx

Maacht elo e Browser op a gitt d'URL http://test.lab/status fir Äre PHP-FPM Prozessstatus ze gesinn.

Alternativ benotzt de Curlprogramm wéi follegt, wou de -L Fändel d'Plaz vun der Säit spezifizéiert.

$ curl -L http://test.lab/status

Par défaut dréckt d'Statussäit nëmmen e Resumé oder kuerze Status aus. Fir de Status fir all Poolprozess ze gesinn, gitt \voll an der Query String, zum Beispill:

http://www.foo.bar/status?full

Dir kënnt d'Ausgabformat (JSON, HTML oder XML) definéieren wéi gewisen.

http://www.foo.bar/status?json&full
http://www.foo.bar/status?html&full
http://www.foo.bar/status?xml&full

Drënner sinn d'Wäerter, déi am php-fpm vollen Status zréckginn, fir all Prozess:

  • pid - PID vum Prozess.
  • Staat de Prozessstatus (Idle, Lafen, etc.).
  • Startzäit - Datum an Zäit wou de Prozess ugefaang huet.
  • Start zanter - Zuel vu Sekonnen zënter datt de Prozess ugefaang huet.
  • Ufroen - Unzuel vun Ufroen déi de Prozess zerwéiert huet.
  • Ufro Dauer – Dauer an µs vun den Ufroen.
  • Ufromethod - Ufromethod (GET, POST, etc.).
  • URI URI - URI URI mat der Ufro String ufroen.
  • Inhaltslängt - Inhaltslängt vun der Ufro (nëmme mat POST).
  • Benotzer - Benotzer (PHP_AUTH_USER) (oder '-' wann net agestallt).
  • Skript - Haaptskript genannt (oder '-' wann net agestallt).
  • läscht Ufro CPU - %cpu déi lescht Ufro verbraucht (notéiert datt et ëmmer 0 ass wann de Prozess net am Idle Zoustand ass).
  • Last Ufro Erënnerung - maximal Betrag vun Erënnerung déi lescht Ufro verbraucht (et ass ëmmer 0 wann de Prozess net am Idle Zoustand ass).

Dat ass et fir elo! An dësem Artikel hu mir erkläert wéi Dir d'php-fpm Status Säit ënner Nginx Webserver aktivéiert. Benotzt de Feedbackformular hei ënnen fir Är Gedanken mat eis ze deelen.