File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / sapi / fpm / init.d.php-fpm.in
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:48:06 2012 UTC (12 years, 4 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_17p0, v5_3_10, HEAD
php

    1: #! /bin/sh
    2: 
    3: ### BEGIN INIT INFO
    4: # Provides:          php-fpm
    5: # Required-Start:    $remote_fs $network
    6: # Required-Stop:     $remote_fs $network
    7: # Default-Start:     2 3 4 5
    8: # Default-Stop:      0 1 6
    9: # Short-Description: starts php-fpm
   10: # Description:       starts the PHP FastCGI Process Manager daemon
   11: ### END INIT INFO
   12: 
   13: prefix=@prefix@
   14: exec_prefix=@exec_prefix@
   15: 
   16: php_fpm_BIN=@sbindir@/php-fpm
   17: php_fpm_CONF=@sysconfdir@/php-fpm.conf
   18: php_fpm_PID=@localstatedir@/run/php-fpm.pid
   19: 
   20: 
   21: php_opts="--fpm-config $php_fpm_CONF"
   22: 
   23: 
   24: wait_for_pid () {
   25: 	try=0
   26: 
   27: 	while test $try -lt 35 ; do
   28: 
   29: 		case "$1" in
   30: 			'created')
   31: 			if [ -f "$2" ] ; then
   32: 				try=''
   33: 				break
   34: 			fi
   35: 			;;
   36: 
   37: 			'removed')
   38: 			if [ ! -f "$2" ] ; then
   39: 				try=''
   40: 				break
   41: 			fi
   42: 			;;
   43: 		esac
   44: 
   45: 		echo -n .
   46: 		try=`expr $try + 1`
   47: 		sleep 1
   48: 
   49: 	done
   50: 
   51: }
   52: 
   53: case "$1" in
   54: 	start)
   55: 		echo -n "Starting php-fpm "
   56: 
   57: 		$php_fpm_BIN $php_opts
   58: 
   59: 		if [ "$?" != 0 ] ; then
   60: 			echo " failed"
   61: 			exit 1
   62: 		fi
   63: 
   64: 		wait_for_pid created $php_fpm_PID
   65: 
   66: 		if [ -n "$try" ] ; then
   67: 			echo " failed"
   68: 			exit 1
   69: 		else
   70: 			echo " done"
   71: 		fi
   72: 	;;
   73: 
   74: 	stop)
   75: 		echo -n "Gracefully shutting down php-fpm "
   76: 
   77: 		if [ ! -r $php_fpm_PID ] ; then
   78: 			echo "warning, no pid file found - php-fpm is not running ?"
   79: 			exit 1
   80: 		fi
   81: 
   82: 		kill -QUIT `cat $php_fpm_PID`
   83: 
   84: 		wait_for_pid removed $php_fpm_PID
   85: 
   86: 		if [ -n "$try" ] ; then
   87: 			echo " failed. Use force-quit"
   88: 			exit 1
   89: 		else
   90: 			echo " done"
   91: 		fi
   92: 	;;
   93: 
   94: 	force-quit)
   95: 		echo -n "Terminating php-fpm "
   96: 
   97: 		if [ ! -r $php_fpm_PID ] ; then
   98: 			echo "warning, no pid file found - php-fpm is not running ?"
   99: 			exit 1
  100: 		fi
  101: 
  102: 		kill -TERM `cat $php_fpm_PID`
  103: 
  104: 		wait_for_pid removed $php_fpm_PID
  105: 
  106: 		if [ -n "$try" ] ; then
  107: 			echo " failed"
  108: 			exit 1
  109: 		else
  110: 			echo " done"
  111: 		fi
  112: 	;;
  113: 
  114: 	restart)
  115: 		$0 stop
  116: 		$0 start
  117: 	;;
  118: 
  119: 	reload)
  120: 
  121: 		echo -n "Reload service php-fpm "
  122: 
  123: 		if [ ! -r $php_fpm_PID ] ; then
  124: 			echo "warning, no pid file found - php-fpm is not running ?"
  125: 			exit 1
  126: 		fi
  127: 
  128: 		kill -USR2 `cat $php_fpm_PID`
  129: 
  130: 		echo " done"
  131: 	;;
  132: 
  133: 	*)
  134: 		echo "Usage: $0 {start|stop|force-quit|restart|reload}"
  135: 		exit 1
  136: 	;;
  137: 
  138: esac

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>