INSTALL revision 91ea8a85362a63522578e4d59fc6bfe37bc8df17
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APACHE INSTALLATION OVERVIEW
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Quick Start - Unix
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran ------------------
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran For complete installation documentation, see [ht]docs/manual/install.html or
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran http://httpd.apache.org/docs/2.5/install.html
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran $ ./configure --prefix=PREFIX
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran $ make
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran $ make install
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran $ PREFIX/bin/apachectl start
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran NOTES: * Replace PREFIX with the filesystem path under which
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Apache should be installed. A typical installation
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran might use "/usr/local/apache2" for PREFIX (without the
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran quotes).
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran * Read the section "APR - Unix" below.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran * If you are a developer building Apache directly from
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Subversion, you will need to run ./buildconf before running
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran configure. This script bootstraps the build environment and
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran requires Python as well as GNU autoconf and libtool. If you
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran build Apache from a release tarball, you don't have to run
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran buildconf.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran * If you want to build a threaded MPM (for instance worker)
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran on FreeBSD, be aware that threads do not work well with
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Apache on FreeBSD versions before 5.4-RELEASE. If you wish
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran to try a threaded Apache on an earlier version of FreeBSD,
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran use the --enable-threads parameter to ./configure in
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran addition to the --with-mpm parameter.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran * If you are building directly from Subversion on Mac OS X
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran (Darwin), make sure to use GNU Libtool 1.4.2 or newer. All
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran recent versions of the developer tools on this platform
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran include a sufficiently recent version of GNU Libtool (named
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran glibtool, but buildconf knows where to find it).
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran For a short impression of what possibilities you have, here is a
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran typical example which configures Apache for the installation tree
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran /sw/pkg/apache with a particular compiler and flags plus the two
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran additional modules mod_rewrite and mod_speling for later loading
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran through the DSO mechanism:
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran $ CC="pgcc" CFLAGS="-O2" \
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran ./configure --prefix=/sw/pkg/apache \
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran --enable-rewrite=shared \
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran --enable-speling=shared
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran The easiest way to find all of the configuration flags for Apache 2.5
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran is to run ./configure --help.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APR - Unix
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran ----------
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran httpd trunk (httpd development version 2.5) can use APR trunk (future
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APR version 2.0) or the combination of the current APR 1.x branch and
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran the current APR-util 1.x branch. (APR trunk bundles the features in
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APR-util 1.x.)
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran The httpd buildconf step, required when building httpd from Subversion,
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran must have access to the APR source. The httpd configure step, always
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran required, can configure the APR source in srclib or use a previously-
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran built APR.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APR (and APR-util if using APR 1.x) can be built with httpd from httpd's
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran srclib directory or can be built separately, prior to building httpd.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Building APR with httpd from httpd's srclib directory is required if
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran you don't have the compiler which the system APR was built with, and it
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran can also be advantageous if you are a developer who will be linking your
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran code with httpd or using a debugger to step through server code, as it
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran removes the possibility of version or compile-option mismatches with
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran APR and APR-util code.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran To use APR trunk in srclib:
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran Check out APR trunk in srclib/apr with the following command:
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran svn co http://svn.apache.org/repos/asf/apr/apr/trunk srclib/apr
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran buildconf will find it automaticaly. Use the --with-included-apr
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran argument to httpd configure.
b72d5b75fd6f5bb08d29f65652d60058fc3a2608Michael Corcoran
To use APR 1.x and APR-util 1.x in srclib:
Check out the current branches as srclib/apr and srclib/apr-util with
the following commands:
svn co http://svn.apache.org/repos/asf/apr/apr/branches/1.4.x srclib/apr
svn co http://svn.apache.org/repos/asf/apr/apr-util/branches/1.5.x srclib/apr-util
buildconf will find them automaticaly. Use the --with-included-apr
argument to httpd configure.
To use existing checkouts of APR (and APR-util if using APR 1.x):
httpd buildconf must have access to the source trees. Use these arguments
to httpd buildconf:
--with-apr=[path to apr source] --with-apr-util=[path to apr-util source]
(Omit --with-apr-util if using APR trunk.)
httpd configure must have access to a previously build apr. Use these
arguments to httpd configure:
--with-apr=[path to apr install] --with-apr-util=[path to apr-util install]
(Omit --with-apr-util if using APR trunk.)
Quick Start - Windows
---------------------
For complete documentation, see manual/platform/windows.html.en or
http://httpd.apache.org/docs/2.5/platform/windows.html.
The Apache/Win32 binaries are distributed as Windows Installer packages
(.msi) named httpd-2.5.xx-win32-x86-no_ssl.msi for a version without mod_ssl
and httpd-2.5.xx-win32-x86-openssl-1.0.1x.msi for a version including the
mod_ssl plus the openssl library and command line utility. Additional 64 bit
binaries have similarly named -win64-x64 package names. These packages
may be unpacked without "installing" them by using the msiexec /a option.
If you have unpacked a source distribution (named httpd-2.5.x-win32-src.zip,
without any -x86 or -x64 notation) you must compile the package yourself,
see the links mentioned above. Unless you intended to do this, please look
again for an .msi package in http://www.apache.org/dist/httpd/binaries/win32/
and install that desired .msi package.
The .msi package configures the httpd.conf file, and installs and starts
the Apache2.x service for you. It also installs plenty of useful shortcuts
and the taskbar ApacheMonitor. We strongly encourage you to use it.
Postscript
----------
The Apache HTTP Server group cannot field user's installation questions.
There are many valuable forums to help you get started. Please refer your
questions to the appropriate forum, such as the Users Mailing List at
http://httpd.apache.org/userslist.html or the usenet newsgroups
comp.infosystems.www.servers.unix or
comp.infosystems.www.servers.ms-windows.
Thanks for using the Apache HTTP Server, version 2.5.
The Apache Software Foundation
http://www.apache.org/