From e3b2e4be01b4173233bd58393e85e6d7f33f2f8d Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Mon, 27 May 2002 11:46:01 +0000 Subject: [PATCH] simplified apachectl... . it now uses "httpd -k verb" support for start/restart/etc. . it now can pass through any httpd option, so apachectl can be used as a replacement for invoking httpd directly (this practice ensures that any necessary environment variables are set up) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95307 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 7 ++ support/apachectl.in | 165 +++++++------------------------------------ 2 files changed, 32 insertions(+), 140 deletions(-) diff --git a/CHANGES b/CHANGES index 86ded713eb..72a5ba2e95 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,10 @@ +Changes with Apache 2.0.38 + + *) apachectl passes through any httpd options. Note: apachectl + should be used in preference to httpd since it ensures that any + appropriate environment variables have been set up. + [Jeff Trawick] + Changes with Apache 2.0.37 *) Fix the combination of mod_cgid, mod_setuexec, and mod_userdir. diff --git a/support/apachectl.in b/support/apachectl.in index 8b316bc27d..91f1a6fe10 100644 --- a/support/apachectl.in +++ b/support/apachectl.in @@ -7,6 +7,8 @@ # to controlling Apache. Written by Marc Slemko, 1997/08/23 # # The exit codes returned are: +# XXX this doc is no longer correct now that the interesting +# XXX functions are handled by httpd # 0 - operation completed successfully # 1 - # 2 - usage error @@ -25,9 +27,6 @@ ARGV="$@" # |||||||||||||||||||| START CONFIGURATION SECTION |||||||||||||||||||| # -------------------- -------------------- # -# the path to your PID file -PIDFILE=@exp_runtimedir@/@progname@.pid -# # the path to your httpd binary, including options if necessary HTTPD='@exp_sbindir@/@progname@' # @@ -50,146 +49,32 @@ STATUSURL="http://localhost:@PORT@/server-status" ERROR=0 if [ "x$ARGV" = "x" ] ; then - ARGS="help" + ARGV="-h" fi -for ARG in $ARGV $ARGS -do - # check for pidfile - if [ -f $PIDFILE ] ; then - PID=`cat $PIDFILE` - if [ "x$PID" != "x" ] && kill -0 $PID 2>/dev/null ; then - STATUS="@progname@ (pid $PID) running" - RUNNING=1 - else - STATUS="@progname@ (pid $PID?) not running" - RUNNING=0 - fi - else - STATUS="@progname@ (no pid file) not running" - RUNNING=0 - fi - - case $ARG in - start) - if [ $RUNNING -eq 1 ]; then - echo "$0 $ARG: @progname@ (pid $PID) already running" - continue - fi - if $HTTPD ; then - echo "$0 $ARG: @progname@ started" - else - echo "$0 $ARG: @progname@ could not be started" - ERROR=3 - fi - ;; - startssl|sslstart|start-SSL) - if [ $RUNNING -eq 1 ]; then - echo "$0 $ARG: @progname@ (pid $PID) already running" - continue - fi - if $HTTPD -DSSL; then - echo "$0 $ARG: @progname@ started" - else - echo "$0 $ARG: @progname@ could not be started" - ERROR=3 - fi - ;; - stop) - if [ $RUNNING -eq 0 ]; then - echo "$0 $ARG: $STATUS" - continue - fi - if kill $PID ; then - echo "$0 $ARG: @progname@ stopped" - else - echo "$0 $ARG: @progname@ could not be stopped" - ERROR=4 - fi - ;; - restart) - if [ $RUNNING -eq 0 ]; then - echo "$0 $ARG: @progname@ not running, trying to start" - if $HTTPD ; then - echo "$0 $ARG: @progname@ started" - else - echo "$0 $ARG: @progname@ could not be started" - ERROR=5 - fi - else - if $HTTPD -t >/dev/null 2>&1; then - if kill -HUP $PID ; then - echo "$0 $ARG: @progname@ restarted" - else - echo "$0 $ARG: @progname@ could not be restarted" - ERROR=6 - fi - else - echo "$0 $ARG: configuration broken, ignoring restart" - echo "$0 $ARG: (run 'apachectl configtest' for details)" - ERROR=6 - fi - fi - ;; - graceful) - if [ $RUNNING -eq 0 ]; then - echo "$0 $ARG: @progname@ not running, trying to start" - if $HTTPD ; then - echo "$0 $ARG: @progname@ started" - else - echo "$0 $ARG: @progname@ could not be started" - ERROR=5 - fi - else - if $HTTPD -t >/dev/null 2>&1; then - if kill -@AP_SIG_GRACEFUL_SHORT@ $PID ; then - echo "$0 $ARG: @progname@ gracefully restarted" - else - echo "$0 $ARG: @progname@ could not be restarted" - ERROR=7 - fi - else - echo "$0 $ARG: configuration broken, ignoring restart" - echo "$0 $ARG: (run 'apachectl configtest' for details)" - ERROR=7 - fi - fi - ;; - status) - $LYNX $STATUSURL | awk ' /process$/ { print; exit } { print } ' - ;; - fullstatus) - $LYNX $STATUSURL - ;; - configtest) - if $HTTPD -t; then - : - else - ERROR=8 - fi - ;; - *) - echo "usage: $0 (start|stop|restart|fullstatus|status|graceful|configtest|help)" - cat <