Getting, Installing, and Running Apacheby Rael Dornfest
There are about as many ways to build and install Apache as there are reasons to run a web server. As it's our first time out, we'll take the road most traveled and leave the advanced configurations for later columns.
In this column, I'll wander through three methods of Apache installation under Unix:
- Binary installation
- Using a Red Hat Package Manager (RPM) (for those of you running Red Hat Linux)
- From scratch (source, that is)
I find installing Apache from scratch the simplest and most flexible method, but I'll leave you to choose which method you prefer.
(This article does not cover Apache Win 32. If you wish to install Apache under Windows 95, 98, or NT, take a look at Apache.org's excellent step-by-step tutorial at: http://www.apache.org/docs/windows.html.)
Where do I get Apache?
What do I need?
To install Apache, you'll need:
- A Unix box
- Root access on this box
- Basic familiarity with the Unix command-line interface (or a Unix-savvy friend)
- For binary and source installations, the
A binary is pre-fab, which means someone else has gone to the trouble of configuring and building the software for you. There are, however, a few caveats I should mention:
- Binaries are compiled for a particular operating system. In other
words, you must use a binary built specifically for FreeBSD on
your FreeBSD machine and a Linux binary on your Linux box. You need to
be sure to grab the correct binary; if you don't see a binary for
your particular operating system, you must choose a different method of installation.
- Apache binaries are usually a version or two behind the
current source distribution. This means you don't reap the benefits
of the latest bug fixes and feature enhancements.
- Because binaries are pre-configured, you don't have much opportunity to alter the way the software works. If you're a newcomer, you may not care about this loss of flexibility. Fortunately most Apache binaries include a full source distribution, providing you with the best of both worlds -- play now, learn later.
install a binary. Point your browser at
and download the binary for your operating system. You'll most
likely be presented with a directory containing multiple
versions of Apache in various compressed forms. For the
purposes of this tutorial, I'll assume you've downloaded the
gzip'd form of the latest 1.3.x Apache binary (currently that's
apache_1.3.9-i386-whatever-freebsd3.2.tar.gz on my FreeBSD
box). If there is a ReadMe associated with the file you're
downloading, you may want to review it for any interesting
installation tidbits or possible bugs.
Now let's uncompress the archive using the handy combination of gunzip and tar. You should replace the "
apache_1.3.9-i386-whatever-freebsd3.2.tar.gz" text below with
the name of the gzip'd file you downloaded.
Some of you may be lucky enough to have a version of tar that is capable of taking care of both tasks.
gunzip < apache_1.3.9-i386-whatever-freebsd3.2.tar.gz | tar xvf -
Either way, you should end up with an
tar xvzf apache_1.3.9-i386-whatever-freebsd3.2.tar.gz
apache_1.3.xdirectory, with x being the particular sub-version of Apache you downloaded. Move into the newly created directory.
As of Apache 1.3.11, binary distributions contain an install script; mine's called
install.bindist.sh. If your binary does not seem to contain such an install script, take a look at the README.bindist and/or INSTALL.bindist documents for further information; if these documents don't outline a simple installation method, you'll probably want to use one of the other methods I cover in this column.
If you've not already done so, you'll need to become root. Then go ahead and run the install script.
This command should install the various bits of the Apache distribution into the appropriate locations; the default is usually to install everything under
/usr/local/apache(confirm this by consulting your README.bindist and/or INSTALL.bindist documents).
That's it for installing binaries. If you're interested in learning how to install Apache using Red Hat Package Manager or from scratch, read on. Or, if you're just using the binary section of this tutorial, you can skip ahead to Starting Apache.