Apache Modules are code segments that are written to comply with the Apache API specification and can be loaded into the Apache Web Server. Apache modules can be loaded in the following ways:
Statically loaded in the compiled httpd daemon
Dynamically loaded in the web server configuration file
This modular design for adding web server features gives web administrators and developers tremendous power and flexibility. A wide variety of Apache modules have been created supporting all kinds of exciting web server features. Web server speed and efficiency is improved when using Apache modules since your Virtual Private Server web server can internally process instruction sets rather than relying on external applications.
Static apache modules are compiled into the httpd or httpsd daemon programs when Apache is compiled. The following Apache modules are statically loaded into our customized Apache Web Server.
Apache 1.3
apache_ssl mod_access mod_actions mod_alias mod_auth mod_auth_dbm mod_autoindex mod_cgi mod_dir mod_imap mod_include mod_log_agent mod_log_config mod_log_referer mod_mime mod_so mod_setenvif mod_userdirApache 1.2
apache_ssl, http_core, mod_access, mod_actions, mod_alias, mod_auth, mod_auth_dbm, mod_browser, mod_cgi, mod_dir, mod_imap, mod_include, mod_log_agent, mod_log_config, mod_log_referer, mod_mime, mod_so.c, mod_userdir
|
NOTE: If you do not know which version of Apache your Virtual Private Server is using, check the top of your ~/www/conf/httpd.conf file. Unless otherwise indicated (in the first line), you are using Apache 1.3. |
Dynamic module support is one of the key features of the Apache Web Server. The ability to dynamically load modules is known as DSO support. DSO allows you to extend the features and capabilities of Apache by adding the specific module you need, when you need it, without recompiling the web server binary.
Some notable dynamic Apache modules include the following.
mod_dav - Integrated DAV support
mod_frontpage - Integrated FrontPage support
mod_jk - Integrated Java Servlet and JSP support (Solaris).
mod_jserv - Integrated Java Servlet support (FreeBSD).
mod_perl - Integrated Perl support
Use the LoadModule directive in order to load a dynamic module into your Apache Web Server. The LoadModule should be placed near the top of your web server configuration file (~/www/conf/httpd.conf). The syntax is like this:
LoadModule MODULE-NAME modules/FILE-NAME
For example, to add the Status Module, add this line:
LoadModule status_module modules/mod_status.so
A complete list of all available dynamic Apache modules appears below.
| Apache 1.3 | Apache 1.2 |
|---|---|
FILE-NAME MODULE-NAME mod_asis asis_module mod_auth_anon anon_auth_module mod_auth_db db_auth_module mod_auth_mysql auth_mysql_module mod_cern_meta cern_meta_module mod_dav mod_digest digest_module mod_env env_module mod_expires expires_module mod_fastcgi fastcgi_module mod_frontpage mod_gzip mod_headers headers_module mod_info info_module mod_jk mod_jserv mod_mime_magic mime_magic_module mod_mmap_static mmap_static_module mod_negotiation mod_perl mod_php4 mod_proxy proxy_module mod_python python_module mod_rewrite rewrite_module mod_speling speling_module mod_status status_module mod_usertrack usertrack_module mod_vhost_alias vhost_alias_module |
mod_asis mod_auth.db mod_block mod_digest mod_env mod_expires mod_headers mod_info mod_negotiation mod_php3 mod_speling mod_status mod_usertrack |
|
NOTE: If you try to load all the modules at the same time you will probably get a resource error. Simply load the modules you need one at a time. |
Apache 1.3 also supports the APXS (APache eXtenSion) tool. APXS allows you to compile and link your own dynamic shared object (DSO) Apache Modules. To use APXS, connect to your Virtual Private Server via Telnet or SSH and issue the following command.
% /usr/local/apache/1.3/bin/apxs OPTIONS MODULE_CODE
% /usr/home/SKEL/apache/1.3/bin/apxs OPTIONS MODULE_CODE