如何实现php-fpm服务启动脚本
这篇文章给大家分享的是有关如何实现php-fpm服务启动脚本的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
先创建自启动文件:/etc/init.d/php-fpm
内容如下:
#!/bin/sh ###BEGININITINFO #Provides:php-fpm #Required-Start:$remote_fs$network #Required-Stop:$remote_fs$network #Default-Start:2345 #Default-Stop:016 #Short-Description:startsphp-fpm #Description:startsthePHPFastCGIProcessManagerdaemon ###ENDINITINFO 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 whiletest$try-lt35;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` sleep1 done } case"$1"in start) echo-n"Startingphp-fpm" $php_fpm_BIN--daemonize$php_opts if["$?"!=0];then echo"failed" exit1 fi wait_for_pidcreated$php_fpm_PID if[-n"$try"];then echo"failed" exit1 else echo"done" fi ;; stop) echo-n"Gracefullyshuttingdownphp-fpm" if[!-r$php_fpm_PID];then echo"warning,nopidfilefound-php-fpmisnotrunning?" exit1 fi kill-QUIT`cat$php_fpm_PID` wait_for_pidremoved$php_fpm_PID if[-n"$try"];then echo"failed.Useforce-quit" exit1 else echo"done" fi ;; status) if[!-r$php_fpm_PID];then echo"php-fpmisstopped" exit0 fi PID=`cat$php_fpm_PID` ifps-p$PID|grep-q$PID;then echo"php-fpm(pid$PID)isrunning..." else echo"php-fpmdeadbutpidfileexists" fi ;; force-quit) echo-n"Terminatingphp-fpm" if[!-r$php_fpm_PID];then echo"warning,nopidfilefound-php-fpmisnotrunning?" exit1 fi kill-TERM`cat$php_fpm_PID` wait_for_pidremoved$php_fpm_PID if[-n"$try"];then echo"failed" exit1 else echo"done" fi ;; restart) $0stop $0start ;; reload) echo-n"Reloadservicephp-fpm" if[!-r$php_fpm_PID];then echo"warning,nopidfilefound-php-fpmisnotrunning?" exit1 fi kill-USR2`cat$php_fpm_PID` echo"done" ;; *) echo"Usage:$0{start|stop|force-quit|restart|reload|status}" exit1 ;; esac
配置php-fpm服务
#设置权限 chmod755/etc/init.d/php-fpm #php-fpm加入服务 chkconfig--addphp-fpm #php-fpm234级别下设置为启动 chkconfigphp-fpmon #查看php-fpm服务当前配置 chkconfig--listphp-fpm php-fpm0:off1:off2:on3:on4:on5:on6:off
php-fpm使用方法
#启动 servicephp-fpmstart #关闭 servicephp-fpmstop #重启 servicephp-fpmrestart #重载 servicephp-fpmreload #检查配置文件 servicephp-fpmconfigtest
脚本说明
#Sourcefunctionlibrary. ./etc/rc.d/init.d/functions #Sourcenetworkingconfiguration. ./etc/sysconfig/network
以上量行代码有人会疑问他们到底是做什么的,'.'是source类似于程序中的include和require,将functions里面的方法全部倒入到这边,这边程序便可以使用,例如这边用到的daemon、status。第二行的network实际上就几行,如下
NETWORKING=yes HOSTNAME=E10162
将他们作为变量赋值,判断网卡是否启动,如果你的nginx不走网卡,其实网络这段可以去掉.
/etc/init.d/php-fpm
感谢各位的阅读!关于“如何实现php-fpm服务启动脚本”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
推荐阅读
-
php字符串增加1如何实现
php字符串增加1如何实现这篇“php字符串增加1如何实现”文章的...
-
php如何判断字符串是否有中文
-
php如何实现字符串去掉头尾
-
php字符串的组成是什么
php字符串的组成是什么这篇文章主要讲解了“php字符串的组成是什...
-
php如何让Swoole/Pool进程池实现Redis持久连接
php如何让Swoole/Pool进程池实现Redis持久连接本篇...
-
php字符串长度不一致如何解决
-
php时区不正确如何解决
-
php+fread()乱码如何解决
php+fread()乱码如何解决本篇内容介绍了“php+frea...
-
php explode报错如何解决
-
linux Centos如何安装PHP7
linuxCentos如何安装PHP7今天小编给大家分享一下li...