]> git.pld-linux.org Git - packages/apache.git/blob - apache.init
- bug fixes
[packages/apache.git] / apache.init
1 #!/bin/sh
2 #
3 # apache        Apache Web Server
4 #
5 # chkconfig:    345 85 15
6 # description:  Apache is a World Wide Web server.  It is used to serve \
7 #               HTML files and CGI.
8 # processname:  httpd
9 # pidfile:      /var/run/httpd.pid
10 # config:       /etc/httpd/conf/access.conf
11 # config:       /etc/httpd/conf/httpd.conf
12 # config:       /etc/httpd/conf/srm.conf
13
14
15 # Source function library
16 . /etc/rc.d/init.d/functions
17
18 # Get network config
19 . /etc/sysconfig/network
20
21 # Get service config
22 [ -f /etc/sysconfig/apache ] && . /etc/sysconfig/apache
23
24 # Check that networking is up.
25 if is_yes "${NETWORKING}"; then
26         if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
27                 # nls "ERROR: Networking is down. %s can't be run." <service>
28                 msg_network_down httpd
29                 exit 1
30         fi
31 else
32         exit 0
33 fi
34
35 [ -z "$HTTPD_MPM" ] && HTTPD_MPM="prefork"
36
37 RETVAL=0
38 # See how we were called.
39 case "$1" in
40   start)
41         # Check if the service is already running?
42         if [ ! -f /var/lock/subsys/httpd ]; then
43                 msg_starting httpd.${HTTPD_MPM}
44                 daemon httpd.${HTTPD_MPM} -f /etc/httpd/httpd.conf $HTTPD_OPTS
45                 RETVAL=$?
46                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/httpd
47         else
48                 msg_already_running httpd.${HTTPD_MPM}
49         fi
50         ;;
51   stop)
52         # Stop daemons.
53         if [ -f /var/lock/subsys/httpd ]; then
54                 msg_stopping httpd.${HTTPD_MPM}
55                 if [ -f /var/run/httpd.pid ]; then
56                         PID=$(filter_chroot `cat /var/run/httpd.pid`)
57                         if [ -z "$PID" ]; then
58                                 PID=0
59                         fi
60                 else
61                         PID=0
62                 fi
63                 daemon httpd.${HTTPD_MPM} -f /etc/httpd/httpd.conf -k stop
64                 RET=$?
65                 # Wait for httpd to really stop
66                 if [ ! $PID -eq 0 -a $RET -eq 0 ]; then
67                         show "Waiting for httpd to stop"
68                         busy
69                         while ps -o command $PID | grep -q ^httpd
70                         do
71                                 sleep 1
72                         done
73                         ok
74                 fi
75                 # Delete pidfile only when apache was called successfully
76                 if [ $RET -eq 0 ]; then
77                         rm -f /var/lock/subsys/httpd /var/run/httpd.pid /var/run/httpd.loc* >/dev/null 2>&1
78                 fi
79         else
80                 msg_not_running httpd.${HTTPD_MPM}
81         fi
82         ;;
83   status)
84         status httpd.${HTTPD_MPM}
85         RETVAL=$?
86         /usr/sbin/httpd.${HTTPD_MPM} -f /etc/httpd/httpd.conf -S
87         ;;
88   restart)
89         $0 stop
90         $0 start
91         ;;
92   reload|force-reload|graceful)
93         if [ -f /var/lock/subsys/httpd ]; then
94                 msg_reloading httpd.${HTTPD_MPM}
95                 daemon httpd.${HTTPD_MPM} -f /etc/httpd/httpd.conf -k graceful
96                 RETVAL=$?
97         else
98                 msg_not_running httpd.${HTTPD_MPM} >&2
99                 RETVAL=7
100         fi
101         ;;
102   *)
103         msg_usage "$0 {start|stop|restart|reload|force-reload|graceful|status}"
104         exit 3
105         ;;
106 esac
107
108 exit $RETVAL
This page took 0.044596 seconds and 4 git commands to generate.