说明:修改配置文件
1: #!/bin/bash 2: # 3: # Licensed to the Apache Software Foundation (ASF) under one or more 4: # contributor license agreements. See the NOTICE file distributed with 5: # this work for additional information regarding copyright ownership. 6: # The ASF licenses this file to You under the Apache License, Version 2.0 7: # (the "License"); you may not use this file except in compliance with 8: # the License. You may obtain a copy of the License at 9: # 10: # http://www.apache.org/licenses/LICENSE-2.0 11: # 12: # Unless required by applicable law or agreed to in writing, software 13: # distributed under the License is distributed on an "AS IS" BASIS, 14: # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15: # See the License for the specific language governing permissions and 16: # limitations under the License. 17: # 18: # 19: # httpd Startup script for the Apache Web Server 20: # 21: # chkconfig: - 85 15 22: # description: The Apache HTTP Server is an efficient and extensible \ 23: # server implementing the current HTTP standards. 24: # processname: httpd 25: # pidfile: /var/run/httpd.pid 26: # config: /etc/httpd/httpd.conf 27: ### BEGIN INIT INFO 28: # Provides: httpd 29: # Required-Start: $local_fs $remote_fs $network $named 30: # Required-Stop: $local_fs $remote_fs $network 31: # Should-Start: distcache 32: # Short-Description: start and stop Apache HTTP Server 33: # Description: The Apache HTTP Server is an extensible server 34: # implementing the current HTTP standards. 35: ### END INIT INFO 36: 37: # Source function library. 38: . /etc/rc.d/init.d/functions 39: 40: # What were we called? Multiple instances of the same daemon can be 41: # created by creating suitably named symlinks to this startup script 42: prog=$(basename $0 | sed -e 's/^[SK][0-9][0-9]//') 43: 44: if [ -f /etc/sysconfig/${prog} ]; then 45: . /etc/sysconfig/${prog} 46: fi 47: # Start httpd in the C locale by default. 48: HTTPD_LANG=${HTTPD_LANG-"C"} 49: 50: # This will prevent initlog from swallowing up a pass-phrase prompt if 51: # mod_ssl needs a pass-phrase from the user. 52: INITLOG_ARGS="" 53: 54: # Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server 55: # with the thread-based "worker" MPM; BE WARNED that some modules may not 56: # work correctly with a thread-based MPM; notably PHP will refuse to start. 57: apachectl=/database/apache/bin/apachectl 58: httpd=${HTTPD-/database/apache/bin/httpd} 59: pidfile=${PIDFILE-/var/run/${prog}.pid} 60: lockfile=${LOCKFILE-/var/lock/subsys/${prog}} 61: RETVAL=0 62: 63: # check for 1.3 configuration 64: check13 () { 65: CONFFILE=/etc/httpd/httpd.conf 66: GONE="(ServerType|BindAddress|Port|AddModule|ClearModuleList|" 67: GONE="${GONE}AgentLog|RefererLog|RefererIgnore|FancyIndexing|" 68: GONE="${GONE}AccessConfig|ResourceConfig)" 69: if grep -Eiq "^[[:space:]]*($GONE)" $CONFFILE; then 70: echo 71: echo 1>&2 " Apache 1.3 configuration directives found" 72: echo 1>&2 " please read @docdir@/migration.html" 73: failure "Apache 1.3 config directives test" 74: echo 75: exit 1 76: fi 77: } 78: # The semantics of these two functions differ from the way apachectl does 79: # things -- attempting to start while running is a failure, and shutdown 80: # when not running is also a failure. So we just do it the way init scripts 81: # are expected to behave here. 82: start() { 83: echo -n $"Starting $prog: " 84: check13 || exit 1 85: LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS 86: RETVAL=$? 87: echo 88: [ $RETVAL = 0 ] && touch ${lockfile} 89: return $RETVAL 90: } 91: stop() { 92: echo -n $"Stopping $prog: " 93: killproc -p ${pidfile} -d 10 $httpd 94: RETVAL=$? 95: echo 96: [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile} 97: } 98: reload() { 99: echo -n $"Reloading $prog: " 100: check13 || exit 1 101: killproc -p ${pidfile} $httpd -HUP 102: RETVAL=$? 103: echo 104: } 105: 106: # See how we were called. 107: case "$1" in 108: start) 109: start 110: ;; 111: stop) 112: stop 113: ;; 114: status) 115: if ! test -f ${pidfile}; then 116: echo $prog is stopped 117: RETVAL=3 118: else 119: status -p ${pidfile} $httpd 120: RETVAL=$? 121: fi 122: ;; 123: restart) 124: stop 125: start 126: ;; 127: condrestart) 128: if test -f ${pidfile} && status -p ${pidfile} $httpd >&/dev/null; then 129: stop 130: start 131: fi 132: ;; 133: reload) 134: reload 135: ;; 136: configtest) 137: LANG=$HTTPD_LANG $httpd $OPTIONS -t 138: RETVAL=$? 139: ;; 140: graceful) 141: echo -n $"Gracefully restarting $prog: " 142: LANG=$HTTPD_LANG $httpd $OPTIONS -k $@ 143: RETVAL=$? 144: echo 145: ;; 146: *) 147: echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|graceful|help|configtest}" 148: exit 1 149: esac 150: exit $RETVAL