#!/bin/bash  
#  
# httpd        Startup script for the 
apache HTTP Server  
#  
# chkconfig: - 85 15  
# description: Apache is a World Wide Web server.  It is u
sed to serve   
#          HTML files and CGI.  
# processname: httpd  
# config: /www/wd
linux/apache/conf/httpd.conf  
# config: /etc/sysconfig/httpd  
# pidfile: /www/wdlinux/apache/logs/httpd.pid  
  
# Source function library.  
. /etc/rc.d/init.d/functions  
  
if [ -f /etc/sysconfig/httpd ]; then  
        . /etc/sysconfig/httpd  
fi  
  
# Start httpd in the C locale by default.  
HTTPD_LANG=${HTTPD_LANG-"C"}  
  
# This will prevent initlog from swallowing up a pass-phrase prompt if  
# mod_ssl needs a pass-phrase from the user.  
INITLOG_ARGS=""  
  
# Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server  
# with the thread-based "worker" MPM; BE WARNED that some modules may not  
# work correctly with a thread-based MPM; notably PHP will refuse to start.  
  
# Path to the apachectl script, server binary, and short-form for messages.  
apachectl=/www/wdlinux/apache/bin/apachectl  
httpd=${HTTPD-/www/wdlinux/apache/bin/httpd}  
prog=httpd  
pidfile=${PIDFILE-/www/wdlinux/apache/logs/httpd.pid}  
lockfile=${LOCKFILE-/var/lock/subsys/httpd}  
RETVAL=0  
  
# The semantics of these two functions differ from the way apachectl does  
# things -- attempting to start while running is a failure, and shutdown  
# when not running is also a failure.  So we just do it the way init scripts  
# are expected to behave here.  
start() {  
        echo -n $"Starting $prog: "  
        LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS  
        RETVAL=$?  
        echo  
        [ $RETVAL = 0 ] && touch ${lockfile}  
        return $RETVAL  
}  
  
# When stopping httpd a delay of >10 second is 
required before SIGKILLing the  
# httpd parent; this gives enough time for the httpd parent to SIGKILL any  
# errant children.  
stop() {  
    echo -n $"Stopping $prog: "  
    killproc -p ${pidfile} -d 3 $httpd  
    RETVAL=$?  
    echo  
    [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}  
}  
reload() {  
    echo -n $"Reloading $prog: "  
    if ! LANG=$HTTPD_LANG $httpd $OPTIONS -t >&/dev/null; then  
        RETVAL=$?  
        echo $"not reloading due to configuration syntax error"  
        failure $"not reloading $httpd due to configuration syntax error"  
    else  
        killproc -p ${pidfile} $httpd -HUP  
        RETVAL=$?  
    fi  
    echo  
}  
  
# See how we were called.  
case "$1" in  
  start)  
    start  
    ;;  
  stop)  
    stop  
    ;;  
  status)  
        status -p ${pidfile} $httpd  
    RETVAL=$?  
    ;;  
  restart)  
    stop  
    start  
    ;;  
  condrestart)  
    if [ -f ${pidfile} ] ; then  
        stop  
        start  
    fi  
    ;;  
  reload)  
        reload  
    ;;  
  graceful|help|configtest|fullstatus)  
    $apachectl $@  
    RETVAL=$?  
    ;;  
  *)  
    echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"  
    exit 1  
esac  
  
exit $RETVAL