LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   The httpd cannot be started after reboot (https://www.linuxquestions.org/questions/linux-software-2/the-httpd-cannot-be-started-after-reboot-842088/)

thomas2004ch 11-03-2010 04:58 AM

The httpd cannot be started after reboot
 
I've installed the Apache Httpd Server on RH Linux. In order to start the httpd after the machine rebooted. But it failed.

I also check the /var/log/message but couldn't find any message about httpd. I have start the httpd manually. Now I can find in /var/log/message a message that "httpd started successfully"

My /etc/rc.d/init.d/httpd looks as follow. Can someone help?


Code:

#!/bin/bash
#
# Startup script for the Apache Web Server
#
# chkconfig: 345 85 15
# description: Apache is a World Wide Web server.  It is used to serve \
#              HTML files and CGI.
# processname: httpd
# pidfile: /var/run/httpd.pid
# config: /etc/httpd/conf/httpd.conf

# Source function library.
. /etc/rc.d/init.d/functions

if [ -f /etc/sysconfig/httpd ]; then
        . /etc/sysconfig/httpd
fi

# 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=/usr/sbin/apachectl
httpd=${HTTPD-/usr/sbin/httpd}
prog=httpd
RETVAL=0

# check for 1.3 configuration
check13 () {
        CONFFILE=/etc/httpd/conf/httpd.conf
        GONE="(ServerType|BindAddress|Port|AddModule|ClearModuleList|"
        GONE="${GONE}AgentLog|RefererLog|RefererIgnore|FancyIndexing|"
        GONE="${GONE}AccessConfig|ResourceConfig)"
        if grep -Eiq "^[[:space:]]*($GONE)" $CONFFILE; then
                echo
                echo 1>&2 " Apache 1.3 configuration directives found"
                echo 1>&2 " please read /usr/share/doc/httpd-2.0.46/migration.html"
                failure "Apache 1.3 config directives test"
                echo
                exit 1
        fi
}

# 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: "
        check13 || exit 1
        daemon $httpd $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch /var/lock/subsys/httpd
        return $RETVAL
}
stop() {
        echo -n $"Stopping $prog: "
        killproc $httpd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/httpd /var/run/httpd.pid
}
reload() {
        echo -n $"Reloading $prog: "
        check13 || exit 1
        killproc $httpd -HUP
        RETVAL=$?
        echo
}

# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        status $httpd
        RETVAL=$?
        ;;
  restart)
        stop
        start
        ;;
  condrestart)
        if [ -f /var/run/httpd.pid ] ; 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


bathory 11-03-2010 05:35 AM

Hi,

What does
Code:

chkconfig --list httpd
returns?

thomas2004ch 11-03-2010 08:19 AM

It returns:
Code:

httpd        0:On  1:Off  2:On  3:On  4:On  5:On  6:Off

bathory 11-03-2010 08:33 AM

How do you manually start httpd?
What happens if you use:
Code:

service httpd stop
sevice httpd start
/etc/init.d/httpd stop
/etc/init.d/httpd start

BTW how did you installed apache? Because:
Quote:

httpd 0:On 1:Off 2:On 3:On 4:On 5:On 6:Off
the service for runlevel 0 should be off.

thomas2004ch 11-04-2010 02:07 AM

I start the httpd as follow:
Code:

service httpd start
If I run service httpd stop, I get:
Code:

Stopping httpd:                                    [  OK  ]
If I run service httpd start, I get:
Code:

Starting httpd:                                    [  OK  ]
If I run /etc/init.d/httpd stop, I get:
Code:

Stopping httpd:                                    [  OK  ]
If I run /etc/init.d/httpd start, I get:
Code:

Starting httpd:                                    [  OK  ]

The code I attached in my last post is wrong. It should be:
Code:

httpd        0:Off  1:Off  2:On  3:On  4:On  5:On  6:Off

bathory 11-04-2010 03:03 AM

Everything look OK. The service starts/stops successfully
If it still doesn't start on boot, click on "show details" (or something like that) on the splash boot screen and watch the output for errors.


All times are GMT -5. The time now is 05:26 AM.