首页后端开发PHP学习php-fpm服务启动脚本的方法

学习php-fpm服务启动脚本的方法

时间2024-02-02 08:51:03发布访客分类PHP浏览580
导读:收集整理的这篇文章主要介绍了学习php-fpm服务启动脚本的方法,觉得挺不错的,现在分享给大家,也给大家做个参考。这个我自己在用,没问题,有三个path需要自己酌情修改。先创建自启动文件:/etc/inIT.d/php-FPM内容如下:#!...
收集整理的这篇文章主要介绍了学习php-fpm服务启动脚本的方法,觉得挺不错的,现在分享给大家,也给大家做个参考。

这个我自己在用,没问题,有三个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 INFOprefix=/usr/local/phpexec_prefix=${
prefix}
php_fpm_BIN=${
exec_prefix}
/sbin/php-fpmphp_fpm_CONF=${
prefix}
/etc/php-fpm.confphp_fpm_PID=${
prefix}
/VAR/run/php-fpm.pidphp_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-fpmphp-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=yesHOSTNamE=E10162

将他们作为变量赋值,判断网卡是否启动,如果你的nginx不走网卡,其实网络这段可以去掉.

相关学习推荐:PHP编程从入门到精通

以上就是学习PHP-fpm服务启动脚本的方法的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 学习php-fpm服务启动脚本的方法
本文地址: https://pptw.com/jishu/596623.html
一文读懂php设计模式之代理模式 了解php-fpm中max

游客 回复需填写必要信息