这个我自己在用,没问题,有三个path需要自己酌情修改。
先创建自启动文件:/etc/init.d/php-fpm
内容如下:
#! /bin/sh ### BEGIN INIT INFO # Provides: php-fpm # Required-Start: $remote_fs $network # Required-Stop: $remote_fs $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts php-fpm # Description: starts the PHP FastCGI Process Manager daemon ### END INIT INFO prefix=/usr/local/php exec_prefix=${prefix} php_fpm_BIN=${exec_prefix}/sbin/php-fpm php_fpm_CONF=${prefix}/etc/php-fpm.conf php_fpm_PID=${prefix}/var/run/php-fpm.pid php_opts=\"--fpm-config $php_fpm_CONF --pid $php_fpm_PID\" wait_for_pid () { try=0 while test $try -lt 35 ; do case \"$1\" in \'created\') if [ -f \"$2\" ] ; then try=\'\' break fi ;; \'removed\') if [ ! -f \"$2\" ] ; then try=\'\' break fi ;; esac echo -n . try=`expr $try + 1` sleep 1 done } case \"$1\" in start) echo -n \"Starting php-fpm \" $php_fpm_BIN --daemonize $php_opts if [ \"$?\" != 0 ] ; then echo \" failed\" exit 1 fi wait_for_pid created $php_fpm_PID if [ -n \"$try\" ] ; then echo \" failed\" exit 1 else echo \" done\" fi ;; stop) echo -n \"Gracefully shutting down php-fpm \" if [ ! -r $php_fpm_PID ] ; then echo \"warning, no pid file found - php-fpm is not running ?\" exit 1 fi kill -QUIT `cat $php_fpm_PID` wait_for_pid removed $php_fpm_PID if [ -n \"$try\" ] ; then echo \" failed. Use force-quit\" exit 1 else echo \" done\" fi ;; status) if [ ! -r $php_fpm_PID ] ; then echo \"php-fpm is stopped\" exit 0 fi PID=`cat $php_fpm_PID` if ps -p $PID | grep -q $PID; then echo \"php-fpm (pid $PID) is running...\" else echo \"php-fpm dead but pid file exists\" fi ;; force-quit) echo -n \"Terminating php-fpm \" if [ ! -r $php_fpm_PID ] ; then echo \"warning, no pid file found - php-fpm is not running ?\" exit 1 fi kill -TERM `cat $php_fpm_PID` wait_for_pid removed $php_fpm_PID if [ -n \"$try\" ] ; then echo \" failed\" exit 1 else echo \" done\" fi ;; restart) $0 stop $0 start ;; reload) echo -n \"Reload service php-fpm \" if [ ! -r $php_fpm_PID ] ; then echo \"warning, no pid file found - php-fpm is not running ?\" exit 1 fi kill -USR2 `cat $php_fpm_PID` echo \" done\" ;; *) echo \"Usage: $0 {start|stop|force-quit|restart|reload|status}\" exit 1 ;; esac
配置php-fpm服务
# 设置权限 chmod 755 /etc/init.d/php-fpm # php-fpm加入服务 chkconfig --add php-fpm # php-fpm 234级别下设置为启动 chkconfig php-fpm on # 查看php-fpm服务当前配置 chkconfig --list php-fpm php-fpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off
php-fpm使用方法
# 启动 service php-fpm start # 关闭 service php-fpm stop # 重启 service php-fpm restart # 重载 service php-fpm reload #检查配置文件 service php-fpm configtest
脚本说明
# Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network
以上量行代码有人会疑问他们到底是做什么的,\’.\’是source类似于程序中的include和require,将functions里面的方法全部倒入到这边,这边程序便可以使用,例如这边用到的daemon、status。第二行的network实际上就几行,如下
NETWORKING=yes HOSTNAME=E10162
将他们作为变量赋值,判断网卡是否启动,如果你的nginx不走网卡,其实网络这段可以去掉.
/etc/init.d/php-fpm
总结
以上所述是小编给大家介绍的php-fpm服务启动脚本的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对免费资源网网站的支持!
© 版权声明
THE END
暂无评论内容