Die Dokumentation auf der php fpm-Website besagt, dass php fpm seit 5.3.3 Teil von coe php ist
Ich verwende 5.3.10, wie kann ich überprüfen, ob es richtig funktioniert? Ich dachte, es wäre ein Dienst, der auf einem Port lief?
Martin Wallace
Die Dokumentation auf der php fpm-Website besagt, dass php fpm seit 5.3.3 Teil von coe php ist
Ich verwende 5.3.10, wie kann ich überprüfen, ob es richtig funktioniert? Ich dachte, es wäre ein Dienst, der auf einem Port lief?
Angenommen, Sie verwenden Linux, überprüfen Sie, ob php-fpm ausgeführt wird, indem Sie die Prozessliste durchsuchen:
ps aux | grep php-fpm
Wenn Sie über IP (im Gegensatz zu Unix-Socket) laufen, können Sie auch nach dem Port suchen:
netstat -an | grep :9000
Oder mit nmap:
nmap localhost -p 9000
Schließlich habe ich gelesen, dass Sie den Status anfordern können, aber meiner Erfahrung nach hat sich dies als unzuverlässig erwiesen:
/etc/init.d/php5-fpm status
Lässt phpinfo() Sie wissen? Ich kann sehen, dass php-fpm läuft, aber ich bin nicht überzeugt, dass es richtig konfiguriert ist, weil phpinfo() immer noch mod_php7 sowie mod_fastcgi anzeigt. Kann es sein, dass beide laufen?
– Adam Patterson
21. Februar 2017 um 17:44 Uhr
Prosti
Für php7.0-fpm rufe ich auf:
service php7.0-fpm status
php7.0-fpm starten/laufen, Prozess 25993
Achten Sie jetzt auf den guten Teil. Der Prozessname ist eigentlich php-fpm7.0
echo `/bin/pidof php-fpm7.0`
26334 26297 26286 26285 26282
Jason
So können Sie dies mit einem Socket auf php-fpm 7 tun
install socat
apt-get install socat
#!/bin/sh
if echo /dev/null | socat UNIX:/var/run/php/php7.0-fpm.sock - ; then
echo "$home/run/php-fpm.sock connect OK"
else
echo "$home/run/php-fpm.sock connect ERROR"
fi
Sie können auch überprüfen, ob der Dienst so ausgeführt wird.
service php7.0-fpm status | grep running
Es wird zurückkehren
Aktiv: aktiv (laufend) seit So 2017-04-09 12:48:09 PDT; Vor 48 Sekunden
bitkahuna
Falls es jemandem auf Amilinux mit installiertem php5.6 und php-fpm hilft, ist es:
sudo /etc/init.d/php-fpm-5.6 status
PHP-FPM ist ein Dienst, der bei Bedarf neue PHP-Prozesse erzeugt, normalerweise über ein Fast-CGI-Modul wie nginx. Sie können dies (mit einer gewissen Fehlerquote) feststellen, indem Sie einfach das init.d-Skript überprüfen, z. B. “sudo /etc/init.d/php-fpm status”.
Welcher Port oder Unix-Datei-Socket verwendet wird, hängt von der Konfiguration ab, ist aber oft nur TCP-Port 9000, dh 127.0.0.1:9000
Der beste Weg, um festzustellen, ob es richtig läuft, besteht darin, nginx laufen zu lassen und einen virtuellen Host einzurichten, der Fast-CGI an PHP-FPM weitergibt, und es einfach mit wget oder einem Browser zu überprüfen.
Das Bash-Skript für den automatischen Neustart von php-fpm:
#!/bin/bash
is_running=`service php7.4-fpm status | grep running`
if [[ ! $is_running ]]
then
echo 'php7.4-fpm is running'
else
echo 'php7.4-fpm is not running';
fi
Cron-Konfiguration für die Überprüfung alle 5 Minuten (/root/check_php7.4_status.sh
– Pfad zum Bash-Skript):
*/5 * * * * /root/check_php7.4_status.sh 2>&1 >> '/root/check_php7.4_status.log'