]> git.pld-linux.org Git - packages/php.git/blob - php-fpm.init
- original from http://php-fpm.anight.org/downloads/head/php-5.2.6-fpm-0.5.9.diff.gz
[packages/php.git] / php-fpm.init
1 #! /bin/sh
2
3 php_fpm_BIN=/usr/bin/php-cgi
4 php_fpm_CONF=/etc/php/fpm.conf
5 php_fpm_PID=/var/run/php/fpm.pid
6
7
8 php_opts="--fpm-config $php_fpm_CONF"
9
10
11 wait_for_pid () {
12         try=0
13
14         while test $try -lt 35 ; do
15
16                 case "$1" in
17                         'created')
18                         if [ -f "$2" ] ; then
19                                 try=''
20                                 break
21                         fi
22                         ;;
23
24                         'removed')
25                         if [ ! -f "$2" ] ; then
26                                 try=''
27                                 break
28                         fi
29                         ;;
30                 esac
31
32                 echo -n .
33                 try=`expr $try + 1`
34                 sleep 1
35
36         done
37
38 }
39
40 case "$1" in
41         start)
42                 echo -n "Starting php_fpm "
43
44                 $php_fpm_BIN --fpm $php_opts
45
46                 if [ "$?" != 0 ] ; then
47                         echo " failed"
48                         exit 1
49                 fi
50
51                 wait_for_pid created $php_fpm_PID
52
53                 if [ -n "$try" ] ; then
54                         echo " failed"
55                         exit 1
56                 else
57                         echo " done"
58                 fi
59         ;;
60
61         stop)
62                 echo -n "Shutting down php_fpm "
63
64                 if [ ! -r $php_fpm_PID ] ; then
65                         echo "warning, no pid file found - php-fpm is not running ?"
66                         exit 1
67                 fi
68
69                 kill -TERM `cat $php_fpm_PID`
70
71                 wait_for_pid removed $php_fpm_PID
72
73                 if [ -n "$try" ] ; then
74                         echo " failed"
75                         exit 1
76                 else
77                         echo " done"
78                 fi
79         ;;
80
81         quit)
82                 echo -n "Gracefully shutting down php_fpm "
83
84                 if [ ! -r $php_fpm_PID ] ; then
85                         echo "warning, no pid file found - php-fpm is not running ?"
86                         exit 1
87                 fi
88
89                 kill -QUIT `cat $php_fpm_PID`
90
91                 wait_for_pid removed $php_fpm_PID
92
93                 if [ -n "$try" ] ; then
94                         echo " failed"
95                         exit 1
96                 else
97                         echo " done"
98                 fi
99         ;;
100
101         restart)
102                 $0 stop
103                 $0 start
104         ;;
105
106         reload)
107
108                 echo -n "Reload service php-fpm "
109
110                 if [ ! -r $php_fpm_PID ] ; then
111                         echo "warning, no pid file found - php-fpm is not running ?"
112                         exit 1
113                 fi
114
115                 kill -USR2 `cat $php_fpm_PID`
116
117                 echo " done"
118         ;;
119
120         logrotate)
121
122                 echo -n "Re-opening php-fpm log file "
123
124                 if [ ! -r $php_fpm_PID ] ; then
125                         echo "warning, no pid file found - php-fpm is not running ?"
126                         exit 1
127                 fi
128
129                 kill -USR1 `cat $php_fpm_PID`
130
131                 echo " done"
132         ;;
133
134         *)
135                 echo "Usage: $0 {start|stop|quit|restart|reload|logrotate}"
136                 exit 1
137         ;;
138
139 esac
This page took 0.052972 seconds and 4 git commands to generate.