From: Rainer Jung The Apache HTTP Server is a modular program where the
administrator can choose the functionality to include in the
- server by selecting a set of modules. The modules can be
- statically compiled into the
Alternatively, the modules can be statically compiled into
+ the
This document describes how to use DSO modules as well as the theory behind their use.
@@ -56,16 +56,16 @@ on a module named--enable-mods-shared option as discussed
- in the install documentation. After a
- module is compiled into a DSO named mod_foo.so you
- can use httpd.conf file to load this module at server startup
or restart.
+ The DSO builds for individual modules can be disabled via
+ --enable-mods-static
+ option as discussed in the install
+ documentation.
To simplify this creation of DSO files for Apache httpd modules
(especially for third-party modules) a support program
@@ -95,17 +95,7 @@
mod_foo.so:
Configure Apache HTTP Server for later installation of shared - modules:
- -httpd.conf.
The most argument to
- --enable-modules indicates that all modules
- which are not experimental or example modules will be built.
Also at this point, you can specify which features you
want included in Apache by enabling and disabling modules. Apache comes with a Base set of modules included by
- default. Other modules are enabled using the
+ href="mod/">modules. Apache comes with a wide range of modules
+ included by default. They will be compiled as
+ shared objects (DSOs) which can be loaded
+ or unloaded at runtime.
+ You can also choose to compile modules statically by using the option
+ --enable-module=static.
Additional modules are enabled using the
--enable-module option, where
module is the name of the module with the
mod_ string removed and with any underscore converted
- to a dash. You can also choose to compile modules as shared objects (DSOs) -- which can be loaded
- or unloaded at runtime -- by using the option
- --enable-module=shared. Similarly, you can
- disable Base modules with the
+ to a dash. Similarly, you can disable modules with the
--disable-module option. Be careful when
using these options, since
For a short impression of what possibilities you have, here
is a typical example which compiles Apache for the installation
tree /sw/pkg/apache with a particular compiler and flags
- plus the two additional modules
When yes.
--enable-MODULE=shared--enable-MODULE=staticSome modules are compiled by default and have to be disabled - explicitly. Use the following options to remove discrete modules from - the compilation process.
+ explicitly or by using the keywordsfew or
+ none (see --enable-modules,
+ --enable-mods-shared and --enable-mods-static
+ below for further explanation) to be removed. The following options remove
+ individual modules from the compilation process.
--disable-actionsSome modules are compiled by default and have to be enabled +
Some modules are not compiled by default and have to be enabled
explicitly or by using the keywords most or
- all (see --enable-mods-shared below for
- further explanation) to be available. Therefore use the options
- below.
all (see --enable-modules,
+ --enable-mods-shared and --enable-mods-static
+ below for further explanation) to be available. The following options
+ add individual modules to the compilation process.
--enable-authn-anon--enable-so--enable-mods-shared option.--enable-spelingAdditionally you can use the special keywords all and
- most. For example,
Additionally you can use the special keywords all,
+ most and few. For example,
will compile most modules and build them as DSO modules. +
will compile most modules and build them as DSO modules,
+will only compile a very basic set of modules.
+The default set is most.
Caveat:
--enable-mods-shared=all does not actually build all
modules. To build all modules then, one might use:
--enable-modules=MODULE-LIST--enable-mods-static=MODULE-LIST--enable-mods-shared,
but will link the given modules statically. This mean, these modules
will always be present while running --enable-modules=MODULE-LIST--enable-mods-shared,
+ and will also link the given modules dynamically. The special
+ keyword none disables the build of all modules.--enable-v4-mapped