在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服务启动脚本相关推荐

  1. 启动和停止Oracle服务bat脚本

    总所周知,Oracle随开机启动会占很大内存,而你每次想用的时候还得去计算机服务里去找服务.一个一个的启动,比较麻烦. 这里给出两个bat脚本,来直接双击启动和停止Oracle服务[脚本内容来源于网络 ...

  2. 本地计算机t3服务服务启动后停止,T3服务启动后又停止了

    右击"我的电脑"-"管理"-"服务"-找到"用友通"服务,选"启动"的时候仍然提示错误:" ...

  3. unbuntu 启动任务脚本_Ubuntu下服务启动脚本编写

    像Nginx.MySQL等服务一样,在后台运行自己编写的抓取天气信息的Python脚本. 1.以管理员权限新建一个服务脚本文件 sudo vim /etc/init.d/weather_service ...

  4. linux重启sh脚本,Linux 之shell脚本系列之服务启动/关闭/重启/状态

    一 问题 自己开发的程序,如何用shell 脚本实现 启动,关闭,重启,查看状态? 二 方案 myshell.sh #!/bin/sh SERVICE="fm_tuoguan_shell&q ...

  5. linux重启python服务_如何将python脚本作为linux服务启动

    服务端代码 python-flask编写 from flask import Flask from flask import request import json @app.route(" ...

  6. centos7.4 mysql启动,centos7下mysql服务启动失败_网站服务器运行维护,centos7,mysql

    centos7系统启动流程_网站服务器运行维护 centos7系统启动流程:1.POST加电自检:2.选择启动设备以加载MBR:3.加载bootloader:4.Kernel自身初始化:5.init管 ...

  7. polkit启动失败_linux某服务启动失败,提示Authorization not available. Check if polkit...问题解决...

    服务器重启后,开启docker服务,发现无法开启,提示如下 [root@10-13-160-184 ~]# systemctl start docker Authorization not avail ...

  8. Centos7环境启动docker报polkit服务启动失败

    出现问题,就需要解决问题,不能较真的不断尝试- 1. /var/log/mongodb/mongod.log 日志中并没有先的日志产生 1 polkit 这个是什么服务? 参考网站 https://w ...

  9. 无法启动mysqll1006_CentOS7下MySQL服务启动失败原因及解决方法

    在重启阿里的CentOS7服务器后,重启MySQL 出现错误 Starting mysqld (via systemctl): Job for mysqld.service failed becaus ...

  10. mysql服务启动很久_Mysql服务启动问题

    Endnote专题之--output style相关问题 Endnote专题之--output style相关问题 1. 打开output style, Edit--->Output Style ...

最新文章

  1. 用Python拨打电话
  2. PMVS:多视图匹配经典算法
  3. LeetCode 159. Longest Substring with At Most Two Distinct Characters --Java,C++,Python解法
  4. 怎么添加新项目到svn服务器,用eclipse+svn插件,上传新项目到svn服务器
  5. PyCharm中控制台输出日志分层级分颜色显示
  6. xp本地计算机策略被更改,组策略的使用方法,和XP系统的实用修改窍门
  7. 微信支付分-支付失败原因总结
  8. JavaWeb学习总结(三十五)——使用JDBC处理Oracle大数据
  9. 全国计算机等级考试题库二级C操作题100套(第05套)
  10. mysql快速随机_MySQL随机取数据最高效的方法
  11. 通过telnet连接查看memcache服务器
  12. 蚂蚁区块链BaaS:开放在云端,落地于实体
  13. 精益创业(LeanStartup)
  14. 惠普136nw打印机清零_惠普136nw打印机清零_HP惠普打印机清零大全
  15. 防火墙 | 网络协议
  16. Linux系统下安装jdk及环境配置(两种方法)
  17. 以下7种硬件测试的种类,不知道的赶紧收藏了!
  18. 壮大云平台中国力量 安全可控大会即将登场
  19. JAVA基础之类和对象
  20. 鳄鱼战大象--疯狂之战

热门文章

  1. 可降阶的高阶微分方程
  2. Windows10下搭建Java环境(最新教程)
  3. 「Python」socket指南
  4. JAVA 利用SimpleDateFormat将String转换为格式化的日期
  5. Ruby中对象数组排序
  6. mybatis generator eclipse插件的安装
  7. 程序员职场第二次课笔记 9.9号
  8. shell getopts
  9. python set使用
  10. 了解Windows内核内存池