Today: 10/10/2008
 

Starting Apache Web Server at every Reboot (for Ubuntu / Debian Linux)

If you compiled and installed Apache on a Debian/Ubuntu Linux machine and want the Apache service run every time you reboot your machine this short tutorial is for you. I have tried to make it very simple so I am pretty sure you'll be able to follow all steps even if you don't know Unix/Linux shell scripting.

In order to run Apache at boot time you have to write a very simple start up script. Follow the steps below. Please note that you have to run the commands as root for both Ubuntu and Debian.

  • In Ubuntu, do the following (you'll probably be prompted for password).

    sudo nano /etc/init.d/apache2

    In Debian do the following (as root).

    nano /etc/init.d/apache2

    The above command will open up a text editor with an empty page (assuming that /etc/init.d/apache2 did not previously exist or was empty).
  • Now, enter the code below in your text editor. Lines starting with a # symbol are comments (except the first line).

    #!/bin/sh
    case "$1" in
    start)
    echo "Starting Apache ..."
    # Change the location to your specific location
    /usr/local/apache2/bin/apachectl start
    ;;
    stop)
    echo "Stopping Apache ..."
    # Change the location to your specific location
    /usr/local/apache2/bin/apachectl stop
    ;;
    graceful)
    echo "Restarting Apache gracefully..."
    # Change the location to your specific location
    /usr/local/apache2/bin/apachectl graceful
    ;;
    restart)
    echo "Restarting Apache ..."
    # Change the location to your specific location
    /usr/local/apache2/bin/apachectl restart
    ;;
    *)
    echo "Usage: '$0' {start|stop|restart|graceful}" > &2
    exit 64
    ;;
    esac
    exit 0

  • Now, press "Ctrl–o" to save the file and "Ctrl–x" to exit from the editor.
  • You have to change the file permissions by executing the command below:

    Ubuntu: sudo chmod u+x /etc/init.d/apache2

    Debian: chmod u+x /etc/init.d/apache2

  • To start Apache, run command below:

    Ubuntu: sudo /etc/init.d/apache2 start

    Debian: /etc/init.d/apache2 start

  • To stop Apache, run command below:

    Ubuntu: sudo /etc/init.d/apache2 stop

    Debian: /etc/init.d/apache2 stop

  • To restart Apache, run command below:

    Ubuntu: sudo /etc/init.d/apache2 restart

    Debian: /etc/init.d/apache2 restart

  • To restart Apache gracefully, run command below:

    Ubuntu: sudo /etc/init.d/apache2 graceful

    Debian: /etc/init.d/apache2 graceful

  • In order to add the script to the default runlevel you do the following.

    Ubuntu: sudo update–rc.d apache2 defaults

    Debian: update–rc.d apache2 defaults

  • In case you want to remove it from the run level you do the following.

    Ubuntu: sudo update–rc.d –f apache2 remove

    Debian: update–rc.d –f apache2 remove

That's it you're done. Now, Apache will start automatically at boot time.


Support Techs Worldwide:

Link to us:

You can support us by putting a link to our website on your blog or website (code is below).

<a href="http://www.techsww.com">
Techs Worldwide - Tutorials about Software Installation,
Configuration, Administration, Monitoring, Tools, Tips &
Tricks
</a>

OR a simple one.

<a href="http://www.techsww.com">
Techs Worldwide - IT related Tutorials
</a>

Feedbacks:

We appreciate feedbacks and suggestions about our tutorials and Techs Worldwide from readers. Please contact us using the form here and let us know what you think about the tutorial and the website in general.

Bookmark Us:

We are working on new features for the website, please keep visiting or bookmark us using your favourite bookmarking service.

Subscribe to RSS:

You can subscribe to our RSS feed here.

 
 
Creative Commons License   Valid XHTML 1.0 Transitional Valid CSS