The Apache HTTP Server supports Dynamically
Shared Objects (DSOs), or modules,
which can easily be loaded at runtime as necessary.
The Apache Project provides complete DSO documentation online at
https://httpd.apache.org/docs-2.0/dso.html. Or, if the
http-manual package is installed,
documentation about DSOs can be found online at https://localhost/manual/mod/.
For the Apache HTTP Server to use a DSO, it must be specified in
a LoadModule directive within /etc/httpd/conf/httpd.conf. If the module is
provided by a separate package, the line must appear within the
modules configuration file in the /etc/httpd/conf.d/ directory. Refer to Section 10.5.12
LoadModule for more
information.
If adding or deleting modules from http.conf, Apache HTTP Server must be reloaded or
restarted, as referred to in Section 10.4 Starting and Stopping
httpd.
If creating a new module, first install the httpd-devel package which contains the include
files, the header files, as well as the APache
eXtenSion (/usr/sbin/apxs)
application, which uses the include files and the header files to
compile DSOs.
After writing a module, use /usr/sbin/apxs to compile the module sources outside
the Apache source tree. For more information about using the
/usr/sbin/apxs command, refer to the the
Apache documentation online at https://httpd.apache.org/docs-2.0/dso.html as well as the
apxs man page.
Once compiled, put the module in the /usr/lib/httpd/modules/ directory. Then add a
LoadModule line to the httpd.conf, using the following structure:
LoadModule <module-name> <path/to/module.so>
|
Where <module-name> is the
name of the module and <path/to/module.so> is the path to the
DSO.