INSTALL revision 105475009f541187ba7a14a367547d9404c578be
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd APACHE INSTALLATION
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Introduction
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ============
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Apache 2.0's configuration and installation environment has changed
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd completely from Apache 1.3. Apache 1.3 used a custom set of scripts
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd to achieve easy installation. Apache 2.0 now uses libtool and
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd autoconf to create an environment that looks like many other Open
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Source projects.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Installing the Apache 2.0 HTTP server
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd =====================================
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd 1. Overview for the impatient
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd --------------------------
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd $ ./configure --prefix=PREFIX
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd $ make install
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd NOTE: PREFIX is not the string "PREFIX". Instead use the Unix
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd filesystem path under which Apache should be installed. For
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd instance use "/usr/local/apache" for PREFIX above.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd NOTE: if you are building from a copy of the Apache CVS
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd repository, rather than a release distribution, then you
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd must use the "buildconf" script before running configure.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd NOTE: If you are building on FreeBSD, you should add the argument
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd --with-mpm=prefork to the configure line. The Apache Group
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd has discovered that threads do not work well with Apache
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd on FreeBSD. For that reason, we disable threads by default
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd on FreeBSD, and you need to build the prefork MPM. If you wish
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd to try to make threads work on FreeBSD, they can be re-enabled
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd by using --enable-threads
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd 2. Requirements
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ------------
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd The following requirements exist for building Apache:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o Disk Space:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Make sure you have approximately 12 MB of temporary free disk
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd space available. After installation Apache occupies
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd approximately 5 MB of disk space (the actual required disk
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd space depends on the amount of compiled in third party
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd modules, etc).
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o ANSI-C Compiler:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Make sure you have an ANSI-C compiler installed. The GNU C
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd compiler (GCC) from the Free Software Foundation (FSF) is
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd recommended (version 2.7.2 is fine). If you don't have GCC
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd then at least make sure your vendors compiler is ANSI
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd compliant. You can find the homepage of GNU at
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd http://www.gnu.org/ and the GCC distribution under
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o Perl 5 Interpreter [OPTIONAL]:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd For some of the support scripts like `apxs' or `dbmmanage'
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd (which are written in Perl) the Perl 5 interpreter is required
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd (versions 5.003 and 5.004 are fine). If no such interpreter is
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd found by the `configure' script this is no harm. Of
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd course, you still can build and install Apache 2.0. Only those
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd support scripts cannot be used. If you have multiple Perl
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd interpreters installed (perhaps a Perl 4 from the vendor and a
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Perl 5 from your own), then it is recommended to use the
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd --with-perl option (see below) to make sure the correct one is
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd selected by ./configure.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o Dynamic Shared Object (DSO) support [OPTIONAL]:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd To provide maximum flexibility Apache now is able to load
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd modules under runtime via the DSO mechanism by using the
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd pragmatic apr_dso_open()/apr_dso_sym() calls. These calls
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd are not available under all operating systems therefore you
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd cannot use the DSO mechanism on all platforms. Apache relies
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd on autoconf to detect the ability to use DSOs, and libtool to
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd determine how to build DSOs. If your platform is supported by
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd libtool, and we can find DSO system calls, then DSOs should
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd work out-of-the-box.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd If your system is not on these lists but has the dlopen-style
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd interface, you either have to provide the appropriate compiler
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd and linker flags (see CFLAGS_SHLIB, LDFLAGS_SHLIB and
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd LDFLAGS_SHLIB_EXPORT below) manually or at least make sure a
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Perl 5 interpreter is installed from which Apache can guess
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd the options.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd If you are building from a copy of the CVS repository, rather
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd than a release distribution, then you will need these additional
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o Libtool 1.3.3:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Make sure that you have libtool 1.3.3 or later installed
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd before trying to configure and build Apache 2.0. Libtool can
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd be downloaded from the Free Software Foundation (FSF), at
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd o Autoconf 2.13:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Make sure that you have autoconf 2.13 or later installed
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd before trying to configure and build Apache 2.0. Autoconf can
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd be downloaded from the Free Software Foundation (FSF), at
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd 3. Configuring the source tree
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ---------------------------
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd If you have downloading the Apache 2.0 from the CVS, rather than
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd a release distribution, then you will need to prepare the source
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd tree for configuration and compilation. This is done by running:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ./buildconf
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd This script ensures that all required programs are installed on
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd the currently machine, and creates the ./configure script. If
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd you are using a package downloaded from apache.org then this step
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd is not necessary.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Introduction:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd The next step is to configure the Apache source tree for your
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd particular platform and personal requirements. The most important
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd setup here is the location prefix where Apache is to be installed
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd later, because Apache has to be configured for this location to
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd work correctly. But there are a lot of other options available
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd for your pleasure.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd For a short impression of what possibilities you have, here is a
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd typical example which compiles Apache for the installation tree
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd /sw/pkg/apache with a particular compiler and flags plus the two
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd additional modules mod_rewrite and mod_speling for later loading
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd through the DSO mechanism:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd $ CC="pgcc" CFLAGS="-O2" \
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ./configure --prefix=/sw/pkg/apache \
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd --enable-rewrite=shared \
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd --enable-speling=shared
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd The easiest way to find all of the configuration flags for Apache
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd 2.0 is to run ./configure --help. What follows is a brief
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd description of most of the arguments.
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd Reference:
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd $ [CC=...] [TARGET=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [CPPFLAGS=...] [NOTEST_CPPFLAGS=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [CFLAGS=...] [NOTEST_CFLAGS=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [CXXFLAGS=...] [NOTEST_CXXFLAGS=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [LDFLAGS=...] [NOTEST_LDFLAGS=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [LIBS=...] [NOTEST_LIBS=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [INCLUDES=...] [SHLIB_PATH=...]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd ./configure
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--quiet] [--prefix=DIR] [--enable-NAME=(shared)]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--verbose] [--exec-prefix=PREFIX] [--disable-NAME]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--shadow[=DIR]] [--bindir=EPREFIX] [--with-mpm=NAME]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--show-layout] [--sbindir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--help] [--libexecdir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--mandir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--sysconfdir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--datadir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--includedir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--localstatedir=DIR]
53a17e7ebf0eec94856bc1c63d4bee52c412f662nd [--runtimedir=DIR] [--enable-suexec]
f3220f54126b25e1cf93cc26c17177b7aef850fdfielding [--logfiledir=DIR] [--suexec-caller=UID]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--proxycachedir=DIR] [--suexec-docroot=DIR]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--with-layout=[FILE:]ID] [--suexec-logfile=FILE]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--suexec-userdir=DIR]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--with-perl=FILE] [--suexec-uidmin=UID]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--without-support] [--suexec-gidmin=GID]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--without-confadjust] [--suexec-safepath=PATH]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--without-execstrip]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--server-uid=UID]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--server-gid=GID]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--enable-maintainter-mode]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard [--enable-debug]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the CC, CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS, INCLUDES,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard SHLIB_PATH and TARGET environment variables to override or expand the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard corresponding default entries as determined by configure.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use NOTEST_CPPFLAGS, NOTEST_CFLAGS, NOTEST_CXXFLAGS, NOTEST_LDFLAGS,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard and NOTEST_LIBS to add entries that should only be used during
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard the actual build and compilation of Apache, such as -Werror.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --prefix=PREFIX and --exec-prefix=EPREFIX options to
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard configure Apache to use a particular installation prefix. The
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard default is PREFIX=/usr/local/apache and EPREFIX=PREFIX.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --bindir=DIR, --sbindir=DIR, --libexecdir=DIR,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --mandir=DIR, --sysconfdir=DIR, --datadir=DIR, --iconsdir=DIR,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --htdocsdir=DIR, --cgidir=DIR, --includedir=DIR,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --localstatedir=DIR, --runtimedir=DIR, --logfiledir=DIR and
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --proxycachedir=DIR option to change the paths for particular
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard subdirectories of the installation tree. Defaults are
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard sysconfdir=PREFIX/conf, datadir=PREFIX, iconsdir=PREFIX/icons,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard includedir=PREFIX/include, localstatedir=PREFIX,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard proxycachedir=PREFIX/proxy.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Note: To reduce the pollution of shared installation
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard locations (like /usr/local/ or /etc) with Apache files
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard to a minimum the string ``/apache'' is automatically
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard appended to 'libexecdir', 'sysconfdir', 'datadir',
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 'localstatedir' and 'includedir' if (and only if) the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard following points apply for each path individually:
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 1. the path doesn't already contain the word ``apache''
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 2. the path was not directly customized by the user
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Keep in mind that per default these paths are derived
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard from 'prefix' and 'exec-prefix', so usually its only a
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard matter whether these paths contain ``apache'' or
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard not. Although the defaults were defined with experience
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard in mind you always should make sure the paths fit your
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard situation by checking the finally chosen paths via the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --layout option.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --with-layout=[F:]ID option to select a particular
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard installation path base-layout. You always _HAVE_ to select a
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard base-layout. There are currently two layouts pre-defined in the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard file config.layout: `Apache' for the classical Apache path layout
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard and `GNU' for a path layout conforming to the GNU `standards'
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard document. When you want to use your own custom layout FOO, either
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard add a corresponding "<Layout FOO>...</Layout>" section to
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard config.layout and use --with-layout=FOO or place it into your own
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard file, say config.mypaths, and use
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --with-layout=config.mypaths:FOO.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --show-layout option to check the final installation path
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard layout while fiddling with the options above.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --enable-NAME=(shared) and --disable-NAME options to
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard enable or disable a particular already distributed module from
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard the Apache package.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --with-mpm=NAME option to determine which MPM should be
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard built for your server.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard _________________________________________________________________________
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard LIST OF AVAILABLE MODULES
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Environment creation
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_env .......... Set environment variables for CGI/SSI scripts
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_setenvif ..... Set environment variables based on HTTP headers
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_unique_id .... Generate unique identifiers for request
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Content type decisions
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_mime ......... Content type/encoding determination (configured)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_mime_magic ... Content type/encoding determination (automatic)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_negotiation .. Content selection based on the HTTP Accept* headers
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard URL mapping
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_alias ........ Simple URL translation and redirection
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_rewrite ...... Advanced URL translation and redirection
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_userdir ...... Selection of resource directories by username
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_speling ...... Correction of misspelled URLs
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Directory Handling
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_dir .......... Directory and directory default file handling
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_autoindex .... Automated directory index file generation
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Access Control and Authentication
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_access ....... Access Control (user, host, network)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_auth ......... HTTP Basic Authentication (user, passwd)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_auth_dbm ..... HTTP Basic Authentication via Unix NDBM files
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_auth_db ...... HTTP Basic Authentication via Berkeley-DB files
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_auth_anon .... HTTP Basic Authentication for Anonymous-style users
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_digest ....... HTTP Digest Authentication
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard HTTP response
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_headers ...... Arbitrary HTTP response headers (configured)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_cern_meta .... Arbitrary HTTP response headers (CERN-style files)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_expires ...... Expires HTTP responses
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_asis ......... Raw HTTP responses
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_include ...... Server Side Includes (SSI) support
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_cgi .......... Common Gateway Interface (CGI) support
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_cgid ......... Common Gateway Interface (CGI) support for
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard multi-threaded MPMs
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_actions ...... Map CGI scripts to act as internal `handlers'
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Internal Content Handlers
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_status ....... Content handler for server run-time status
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_info ......... Content handler for server configuration summary
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Request Logging
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_log_config ... Customizable logging of requests
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_usertrack .... Logging of user click-trails via HTTP Cookies
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Content Management
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_dav .......... WebDAV (RFC 2518) support for Apache
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_dav_fs ....... mod_dav backend to managing filesystem content
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Miscellaneous
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) mod_imap ......... Server-side Image Map support
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_proxy ........ Caching Proxy Module (HTTP, HTTPS, FTP)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_so ........... Dynamic Shared Object (DSO) bootstrapping
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Experimental
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_mmap_static .. Caching of frequently served pages via mmap()
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Development
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) mod_example ...... Apache API demonstration (developers only)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard mpmt_pthread ..... Multi-process(dynamic) Multi-threaded(static)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard prefork .......... Preforking Unix MPM
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard perchild ......... Multi-process(static) Multi-threaded(dynamic)
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Unix MPM, that allows a User per child process
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard winnt ............ Multi-process(1) Multi-threaded Windows MPM
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard mpmt_beos ........ Multi-process Multi-threaded Beos MPM
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard beos ............. Multi-process Multi-threaded Beos MPM
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard spmt_os2 ......... Single-process Multi-threaded OS/2 MPM
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard _________________________________________________________________________
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (+) = enabled per default [disable with --disable-module]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard (-) = disabled per default [enable with --enable-module ]
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --enable-suexec option to enable the suEXEC feature by
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard building and installing the "suexec" support program.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard CAUTION: FOR DETAILS ABOUT THE SUEXEC FEATURE WE HIGHLY RECOMMEND
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard YOU TO FIRST READ THE DOCUMENT htdocs/manual/suexec.html
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard BEFORE USING THE ABOVE OPTIONS.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard USING THE SUEXEC FEATURE PROPERLY CAN REDUCE
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard CONSIDERABLY THE SECURITY RISKS INVOLVED WITH ALLOWING
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard USERS TO DEVELOP AND RUN PRIVATE CGI OR SSI
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard PROGRAMS. HOWEVER, IF SUEXEC IS IMPROPERLY CONFIGURED,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard IT CAN CAUSE ANY NUMBER OF PROBLEMS AND POSSIBLY CREATE
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard NEW HOLES IN YOUR COMPUTER'S SECURITY. IF YOU AREN'T
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard FAMILIAR WITH MANAGING SETUID ROOT PROGRAMS AND THE
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard SECURITY ISSUES THEY PRESENT, WE HIGHLY RECOMMEND THAT
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard YOU NOT CONSIDER USING SUEXEC AND KEEP AWAY FROM THESE
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Use the --quiet option to disable all configuration verbose
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 4. Building the package
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --------------------
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Now you can build the various parts which form the Apache package
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard by simply running the command:
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Please be patient here, this takes approximately 2 minutes to
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard complete under a Pentium-166/FreeBSD-2.2 system, dependend on the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard amount of modules you have enabled.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 5. Installing the package
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard ----------------------
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Now its time to install the package under the configured
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard installation PREFIX (see --prefix option above) by running:
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard $ make install
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard For the paranoid hackers under us: The above command really
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard installs under prefix _only_, i.e. no other stuff from your
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard system is touched. Even if you upgrade an existing installation
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard your configuration files in PREFIX/conf/ are preserved.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 6. Testing the package
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard -------------------
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Now you can fire up your Apache HTTP server by immediately
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard and then you should be able to request your first document via
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard URL http://localhost/ (when you built and installed Apache as
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard root or at least used the --without-confadjust option) or
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard http://localhost:8080/ (when you built and installed Apache as a
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard regular user). Then stop the server again by running:
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 7. Customizing the package
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard -----------------------
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Finally you can customize your Apache HTTP server by editing the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard configuration files under PREFIX/conf/.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Have a look at the Apache manual under docs/manual/ or
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard http://httpd.apache.org/docs/ for a complete reference of
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard available configuration directives.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 8. Preparing the system
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard --------------------
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Proper operation of a public HTTP server requires at least the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 1. A correctly working TCP/IP layer, since HTTP is implemented on
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard top of TCP/IP. Although modern Unix platforms have good
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard networking layers, always make sure you have all official
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard vendor patches referring to the network layer applied.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 2. Accurate time keeping, since elements of the HTTP protocol are
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard expressed as the time of day. So, it's time to investigate
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard setting some time synchronization facility on your
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard system. Usually the ntpdate or xntpd programs are used for
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard this purpose which are based on the Network Time Protocol
bc8fd1b0b1afdf89b8d28eefa8cd74e26ba97986fielding (NTP). See the Usenet newsgroup comp.protocols.time.ntp and
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard the NTP homepage at http://www.eecis.udel.edu/~ntp/ for more
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard details about NTP software and public time servers.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard 9. Contacts
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard o If you want to be informed about new code releases, bug fixes,
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard security fixes, general news and information about the Apache
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard server subscribe to the apache-announce mailing list as
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard described under http://httpd.apache.org/announcelist.html
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard o If you want freely available support for running Apache please
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard join the Apache user community by subscribing at least to the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard following USENET newsgroup: comp.infosystems.www.servers.unix
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard o If you want commercial support for running Apache please
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard contact one of the companies and contractors which are listed
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard o If you have a concrete bug report for Apache please go to the
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Apache Group Bug Database and submit your report:
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard o If you want to participate in actively developing Apache please
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard subscribe to the `new-httpd' mailing list as described at
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard Thanks for running Apache httpd.
1d76334bbce94162d9135b43b7d2517ab6f9ffacstoddard The Apache Group