php5.3以上自带php-fpm扩展无法关闭和重启的问题

源码编译安装php5.4.38,安装目录为/usr/local/php。

启动php-fpm是没问题的,执行以下命令:

/usr/local/php/sbin/php-fpm  

但是使用以下命令关闭和重启php-fpm的时候会报file not found错误:

//php-fpm 关闭:  
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`  
//php-fpm 重启:  
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`  

原因是使用PHP5.3以上自带的php-fpm的系统启动脚本时,它会自己建立一个php-fpm.pid的文件,但是php-fpm配置文件里默认是不会启用这个选项的,所以在使用以上脚本时,会无法关掉php-fpm的进程。

解决方案是,找到/usr/local/php/etc/php-fpm.conf,去掉下面两行代码前的";":

pid = run/php-fpm.pid  
error_log = log/php-fpm.log  

如果系统本身没有php-fpm.pid这个文件,那么修改后,要重启系统才会自动生成php-fpm.pid。