PHP FPM - 检查是否正在运行

时间:2013-02-16 21:10:33

标签: php

php fpm网站上的文档说php fpm是5.3.3中的cos php的一部分

我正在运行5.3.10,如何检查它是否正常工作?我以为这是一个在端口上运行的服务?

5 个答案:

答案 0 :(得分:43)

假设你在Linux上,通过搜索进程列表来检查php-fpm是否正在运行:

ps aux | grep php-fpm

如果通过IP运行(而不是通过Unix套接字),那么您还可以检查端口:

netstat -an | grep :9000

或使用nmap:

nmap localhost -p 9000

最后,我已经读过您可以请求状态,但根据我的经验,这已被证明是不可靠的:

/etc/init.d/php5-fpm status

答案 1 :(得分:14)

对于php7.0-fpm,我打电话:

service php7.0-fpm status
  

php7.0-fpm启动/运行,进程25993

现在注意好的部分。进程名称实际上是php-fpm7.0

echo `/bin/pidof php-fpm7.0`
  

26334 26297 26286 26285 26282

答案 2 :(得分:5)

以下是如何使用php-fpm 7

上的套接字执行此操作
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

您还可以检查服务是否正在运行。

service php7.0-fpm status | grep running

它会返回

活跃:自从Sun应用程序激活(正在运行)Sale:0 48秒前

答案 3 :(得分:2)

如果有人在amilinux上帮助某人安装了php5.6和php-fpm,那就是:

sudo /etc/init.d/php-fpm-5.6 status

答案 4 :(得分:0)

PHP-FPM是一种在需要时生成新PHP进程的服务,通常通过像nginx这样的fast-cgi模块生成。你可以通过检查init.d脚本来判断(有误差) “sudo /etc/init.d/php-fpm status”

正在使用的端口或unix文件套接字取决于配置,但通常只是TCP端口9000.即127.0.0.1:9000

判断它是否正常运行的最佳方法是运行nginx,并设置一个虚拟主机,该主机将快速传递给PHP-FPM,并使用wget或浏览器进行检查。