#!/bin/bash # # apache Start the apache HTTP server. # # The variables below are NOT to be changed. They are there to make the # script more readable. NAME=apache DAEMON=/usr/sbin/$NAME PIDFILE=/var/run/$NAME.pid CONF=/etc/$NAME/httpd.conf APACHECTL=/usr/sbin/${NAME}ctl # note: SSD is required only at startup of the daemon. SSD=`which start-stop-daemon` ENV="env -i LANG=C PATH=/bin:/usr/bin:/usr/local/bin" SHIB_HOME=/opt/shibboleth-1.3 LD_LIBRARY_PATH=${SHIB_HOME}/libexec:${SHIB_HOME}/lib export LD_LIBRARY_PATH trap "" 1 # Check that we're not being started by inetd if egrep -q -i "^[[:space:]]*ServerType[[:space:]]+inet" $CONF then exit 0 fi test_config() { if [ ! -x $APACHECTL ]; then echo "$APACHECTL is not executable, exiting" exit 0 fi # ensure we don't leak environment vars into apachectl APACHECTL="$ENV $APACHECTL" if ! $APACHECTL configtest 2> /dev/null then printf "Configuration syntax error detected. Not reloading.\n\n" $APACHECTL configtest exit 1 fi } should_start() { if [ ! -x $DAEMON ]; then echo "apache is not executable, not starting" exit 0 fi } case "$1" in start) should_start test_config echo -n "Starting web server: $NAME" $ENV $SSD --start --pidfile $PIDFILE --exec $DAEMON > /dev/null ;; stop) echo -n "Stopping web server: $NAME" start-stop-daemon --stop --pidfile $PIDFILE --oknodo rm -rf /var/lib/apache/mod-bandwidth/link/* ;; reload | force-reload) test_config echo -n "Reloading $NAME configuration" start-stop-daemon --stop --pidfile $PIDFILE --signal USR1 ;; reload-modules) test_config echo -n "Reloading $NAME modules" start-stop-daemon --stop --pidfile $PIDFILE --oknodo --retry 30 should_start $ENV $SSD --start --pidfile $PIDFILE --exec $DAEMON > /dev/null ;; restart) test_config echo -n "Restarting $NAME" if ! start-stop-daemon -q --stop --pidfile $PIDFILE --signal HUP; then $ENV $SSD --start --pidfile $PIDFILE --exec $DAEMON > /dev/null fi ;; *) echo "Usage: /etc/init.d/$NAME {start|stop|reload|reload-modules|force-reload|restart}" exit 1 ;; esac if [ $? -eq 0 ]; then echo . exit 0 else echo " failed" exit 1 fi