溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php-fpm服務如何啟動腳本

發(fā)布時間:2020-07-31 09:11:06 來源:億速云 閱讀:164 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關php-fpm服務如何啟動腳本,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

這個我自己在用,沒問題,有三個path需要自己酌情修改。

先創(chuàng)建自啟動文件:/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不走網卡,其實網絡這段可以去掉.


關于php-fpm服務如何啟動腳本就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI