This document covers compilation and installation of Apache on Unix systems, using the manual build and install method. If you wish to use the autoconf-style configure interface, you should instead read the INSTALL file in the root directory of the Apache source distribution. For compiling and installation on specific platforms, see
If you downloaded a binary distribution, skip to Installing Apache. Otherwise read the next section for how to compile the server.
All configuration of Apache is performed in the src
directory of the Apache distribution. Change into this directory.
Configuration file. Uncomment lines corresponding to
those optional modules you wish to include (among the AddModule lines
at the bottom of the file), or add new lines corresponding to
additional modules you have downloaded or written. (See API.html for preliminary docs on how to
write Apache modules). Advanced users can comment out some of the
default modules if they are sure they will not need them (be careful
though, since many of the default modules are vital for the correct
operation and security of the server).
You should also read the instructions in the Configuration
file to see if you need to set any of the Rule lines.
Configure script as given below. However
if this fails or you have any special requirements (e.g., to include
an additional library required by an optional module) you might need
to edit one or more of the following options in the
Configuration file:
EXTRA_CFLAGS, LIBS, LDFLAGS, INCLUDES.
Run the Configure script:
% Configure
Using 'Configuration' as config file
+ configured for <whatever> platform
+ setting C compiler to <whatever> *
+ setting C compiler optimization-level to <whatever> *
+ Adding selected modules
+ doing sanity check on compiler and options
Creating Makefile in support
Creating Makefile in main
Creating Makefile in os/unix
Creating Makefile in modules/standard
(*: Depending on Configuration and your system, Configure
might not print these lines. That's OK).This generates a Makefile for use in stage 3. It also creates a Makefile in the support directory, for compilation of the optional support programs.
(If you want to maintain multiple configurations, you can give an
option to Configure to tell it to read an alternative
Configuration file, such as Configure -file
Configuration.ai).
make.
httpd in the
src directory. A binary distribution of Apache will
supply this file.
The next step is to install the program and configure it. Apache is
designed to be configured and run from the same set of directories
where it is compiled. If you want to run it from somewhere else, make
a directory and copy the conf, logs and
icons directories into it. In either case you should
read the security tips
describing how to set the permissions on the server root directory.
The next step is to edit the configuration files for the server. This
consists of setting up various directives in up to three
central configuration files. By default, these files are located in
the conf directory and are called srm.conf,
access.conf and httpd.conf. To help you get
started there are same files in the conf directory of the
distribution, called srm.conf-dist,
access.conf-dist and httpd.conf-dist. Copy
or rename these files to the names without the -dist.
Then edit each of the files. Read the comments in each file carefully.
Failure to setup these files correctly could lead to your server not
working or being insecure. You should also have an additional file in
the conf directory called mime.types. This
file usually does not need editing.
First edit httpd.conf. This sets up general attributes
about the server: the port number, the user it runs as, etc. Next
edit the srm.conf file; this sets up the root of the
document tree, special functions like server-parsed HTML or internal
imagemap parsing, etc. Finally, edit the access.conf
file to at least set the base cases of access.
In addition to these three files, the server behavior can be configured
on a directory-by-directory basis by using .htaccess
files in directories accessed by the server.
httpd server which is compiled
and configured as above, Apache includes a number of support programs.
These are not compiled by default. The support programs are in the
support directory of the distribution. To compile
the support programs, change into this directory and type
make