summaryrefslogtreecommitdiffstats
path: root/abs/mv-core/lighttpd/spawn-php.rc.d
diff options
context:
space:
mode:
Diffstat (limited to 'abs/mv-core/lighttpd/spawn-php.rc.d')
-rwxr-xr-xabs/mv-core/lighttpd/spawn-php.rc.d67
1 files changed, 67 insertions, 0 deletions
diff --git a/abs/mv-core/lighttpd/spawn-php.rc.d b/abs/mv-core/lighttpd/spawn-php.rc.d
new file mode 100755
index 0000000..cbda262
--- /dev/null
+++ b/abs/mv-core/lighttpd/spawn-php.rc.d
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+# source application-specific settings
+[ -f /etc/conf.d/spawn-php ] && . /etc/conf.d/spawn-php
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+
+PID=`pidof -o %PPID ${FCGIPROGRAM}`
+case "$1" in
+ start)
+ stat_busy "Starting ${SPAWN_DAEMON_NAME}"
+ if [ -z "$PID" ]; then
+ ################## no config below this line
+ if test x$PHP_FCGI_CHILDREN = x; then
+ PHP_FCGI_CHILDREN=5
+ fi
+ export PHP_FCGI_MAX_REQUESTS
+ export FCGI_WEB_SERVER_ADDRS
+
+ ALLOWED_ENV="$ALLOWED_ENV PHP_FCGI_MAX_REQUESTS FCGI_WEB_SERVER_ADDRS"
+
+ # negotiate the parameters for the php-cgi spawn program
+ EX="$SPAWNFCGI -f $FCGIPROGRAM -C $PHP_FCGI_CHILDREN"
+ if [ -z "$FCGISOCKET" ]; then
+ EX="$EX -p $FCGIPORT"
+ else
+ EX="$EX -s $FCGISOCKET"
+ fi
+ if test x$UID = x0; then
+ EX="$EX -u $USERID -g $GROUPID"
+ fi
+ if [ ! -z "$CHROOTDIR" ]; then
+ EX="$EX -c $CHROOTDIR"
+ fi
+
+ # copy the allowed environment variables
+ E=
+ for i in $ALLOWED_ENV; do
+ E="$E $i=${!i}"
+ done
+ # clean environment and set up a new one
+ env - $E $EX > /dev/null
+ add_daemon ${SPAWN_DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping ${SPAWN_DAEMON_NAME}"
+ if [ ! -z "$PID" ]; then
+ killall ${FCGIPROGRAM}
+ rm_daemon ${SPAWN_DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
+
+