php-fpm 没有启动脚本,php-fpm服务启动脚本
在php-fpm還是打補丁的時候,php-fpm重啟只需要執行php-fpm restart或者reload, 自從php5.3之后,php-fpm的啟動和停止顯得比較麻煩,特意改寫了一份nginx的自啟動腳本,如下腳本phpfpm="/usr/local/php-5.3.10/sbin/php-fpm"? 修改為你的php-fpm就可以了。
php-fpm自啟動腳本
cat /etc/init.d/nginx
1
cat/etc/init.d/nginx
內容如下
#!/bin/sh
# DateTime: 2013-09-16
# Author: lianbaikai
# site:http://www.ttlsa.com/html/3039.html
# chkconfig:?? - 84 16
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
phpfpm="/usr/local/php-5.3.10/sbin/php-fpm"
prog=$(basename ${phpfpm})
lockfile=/var/lock/subsys/phpfpm
start() {
[ -x ${phpfpm} ] || exit 5
echo -n $"Starting $prog: "
daemon ${phpfpm}
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc ${phpfpm} -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
${phpfpm} -t
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
status)
rh_status
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload|configtest}"
exit 2
esac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#!/bin/sh
# DateTime: 2013-09-16
# Author: lianbaikai
# site:http://www.ttlsa.com/html/3039.html
# chkconfig:?? - 84 16
# Source function library.
./etc/rc.d/init.d/functions
# Source networking configuration.
./etc/sysconfig/network
# Check that networking is up.
["$NETWORKING"="no"]&&exit0
phpfpm="/usr/local/php-5.3.10/sbin/php-fpm"
prog=$(basename${phpfpm})
lockfile=/var/lock/subsys/phpfpm
start(){
[-x${phpfpm}]||exit5
echo-n$"Starting $prog: "
daemon${phpfpm}
retval=$?
echo
[$retval-eq0]&&touch$lockfile
return$retval
}
stop(){
echo-n$"Stopping $prog: "
killproc$prog-QUIT
retval=$?
echo
[$retval-eq0]&&rm-f$lockfile
return$retval
}
restart(){
configtest||return$?
stop
start
}
reload(){
configtest||return$?
echo-n$"Reloading $prog: "
killproc${phpfpm}-HUP
RETVAL=$?
echo
}
force_reload(){
restart
}
configtest(){
${phpfpm}-t
}
rh_status(){
status$prog
}
rh_status_q(){
rh_status>/dev/null2>&1
}
case"$1"in
start)
rh_status_q&&exit0
$1
;;
stop)
rh_status_q||exit0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q||exit7
$1
;;
status)
rh_status
;;
*)
echo$"Usage: $0 {start|stop|status|restart|reload|configtest}"
exit2
esac
配置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
1
2
3
4
5
6
7
# php-fpm加入服務
chkconfig--addphp-fpm
# php-fpm 234級別下設置為啟動
chkconfigphp-fpmon
# 查看php-fpm服務當前配置
chkconfig--listphp-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
1
2
3
4
5
6
7
8
9
10
# 啟動
servicephp-fpmstart
# 關閉
servicephp-fpmstop
# 重啟
servicephp-fpmrestart
# 重載
servicephp-fpmreload
#檢查配置文件
servicephp-fpmconfigtest
啟動效果如下:
php-fpm服務啟動腳本
腳本說明
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
1
2
3
4
5
# 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
1
2
NETWORKING=yes
HOSTNAME=E10162
將他們作為變量賦值,判斷網卡是否啟動,如果你的nginx不走網卡,其實網絡這段可以去掉.
tips:daemon便是實現上圖漂亮的【 OK 】的函數.
轉載請注明出處: http://www.ttlsa.com/html/3039.html
總結
以上是生活随笔為你收集整理的php-fpm 没有启动脚本,php-fpm服务启动脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php smarty安装,php sma
- 下一篇: php用什么工具调试代码,详细介绍利用开