X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=apache1.init;h=ef23b7bf3751504731cd462ee189aeb6a250c363;hb=b70f1a3a6a47aa28bccdcc3e166b5e65210a1975;hp=187ce2222a18954f4816e37d51142f85fa86f8f6;hpb=da771d4d493e383e78f76ecd1db00fbb74ed73a1;p=packages%2Fapache1.git diff --git a/apache1.init b/apache1.init index 187ce22..ef23b7b 100644 --- a/apache1.init +++ b/apache1.init @@ -22,7 +22,6 @@ # Check that networking is up. if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then - # nls "ERROR: Networking is down. %s can't be run." msg_network_down apache exit 1 fi @@ -39,6 +38,16 @@ RETVAL=0 case "$1" in start) # Check if the service is already running? + if [ -x /usr/lib/apache1/lingerd ]; then + if [ ! -f /var/lock/subsys/lingerd ]; then + msg_starting lingerd + SERVICE_UMASK=002 daemon --user http /usr/lib/apache1/lingerd + RETVAL=$? + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/lingerd + else + msg_already_running lingerd + fi + fi if [ ! -f /var/lock/subsys/apache ]; then msg_starting apache daemon apache $HTTPD_OPTS @@ -57,6 +66,15 @@ case "$1" in else msg_not_running apache fi + if [ -x /usr/lib/apache1/lingerd ]; then + if [ -f /var/lock/subsys/lingerd ]; then + msg_stopping lingerd + /usr/lib/apache1/lingerd -k && ok || fail + rm -f /var/lock/subsys/lingerd >/dev/null 2>&1 + else + msg_not_running lingerd + fi + fi ;; status) status apache @@ -64,11 +82,20 @@ case "$1" in /usr/sbin/apache -S ;; restart) - $0 stop - $0 start - exit $? + apache -t > /dev/null 2>&1 + RETVAL=$? + if [ $RETVAL -eq 0 ]; then + $0 stop + RETVAL=$((RETVAL + $?)) + $0 start + RETVAL=$((RETVAL + $?)) + else + fail + echo "Configuration file syntax test failed." + fi + ;; - reload|force-reload) + force-reload) if [ -f /var/lock/subsys/apache ]; then msg_reloading apache @@ -81,11 +108,11 @@ case "$1" in echo "Configuration file syntax test failed." fi else - msg_not_running apache >&2 + msg_not_running apache RETVAL=7 fi ;; - graceful) + reload|graceful) if [ -f /var/lock/subsys/apache ]; then msg_reloading apache @@ -95,15 +122,33 @@ case "$1" in killproc apache -USR1 else fail - echo "Configuration file syntax test failed." + echo >&2 "Configuration file syntax test failed." fi else - msg_not_running apache >&2 + msg_not_running apache RETVAL=7 fi ;; + flush-logs) + if [ -f /var/lock/subsys/apache ]; then + msg_reloading apache + + apache -t > /dev/null 2>&1 + RETVAL=$? + if [ $RETVAL -eq 0 ]; then + killproc apache -USR1 + RETVAL=$? + else + fail + echo >&2 "Configuration file syntax test failed." + fi + fi + ;; + configtest) + apache -t + ;; *) - msg_usage "$0 {start|stop|restart|reload|force-reload|graceful|status}" + msg_usage "$0 {start|stop|restart|reload|force-reload|graceful|configtest|status}" exit 3 ;; esac