最近有需要装几台lnmp,本着尝鲜的原则,我选择的版本是nginx1.03,php5.3.6。安装完毕后 用  /usr/local/php/sbin/php-fpm start   无法启动,google一下得知这个版本的fpm启动方式有变化,现做记录如下:

 

从php5.3.3开始 源码中开始包含 php-fpm,不用专门再打补丁了,只需要解开源码直接configure,
关于php-fpm的编译参数有 –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent位置。

这个php-fpm 不再支持 php-fpm 补丁具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:

master进程可以理解以下信号

SIGINT, SIGTERM 立刻终止
SIGQUIT 平滑终止
SIGUSR1 重新打开日志文件
SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块

示例:
php-fpm 关闭:
kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 重启:
kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`

其次配置文件不再使用的xml 格式,改为了INI,但是配置参数几乎和以前一样,可参照xml格式的格式配置。
 

—————-补充内容php 5.3.6 中 php-fpm 配置 成 服务启动—————-

cp -f /tools/php-5.3.6/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

php-fpm的启动:
##vim /usr/local/webserver/php/etc/php-fpm.conf
php-fpm.pid 目录必须是:/usr/local/webserver/php/var/run/php-fpm.pid

chmod 755 /etc/init.d/php-fpm
/etc/init.d/php-fpm start
/sbin/chkconfig --add php-fpm (添加到开机服务列表)
/sbin/chkconfig php-fpm on

php-fpm的启动、停止和重启:
/etc/init.d/php-fpm start
/etc/init.d/php-fpm stop

/etc/init.d/php-fpm reload

启动效果如下:

Hai_ISD_7_9_Cent56_64:/usr/local/webserver/php/etc#service php-fpm start
Starting php-fpm  done
Hai_ISD_7_9_Cent56_64:/usr/local/webserver/php/etc#service php-fpm stop
Gracefully shutting down php-fpm . done
Hai_ISD_7_9_Cent56_64:/usr/local/webserver/php/etc#service php-fpm start
Starting php-fpm  done
Hai_ISD_7_9_Cent56_64:/usr/local/webserver/php/etc#service php-fpm reload
Reload service php-fpm  done