Apache Performance Modules

Apache is a powerful and widely-used World-Wide Web (Web) server. One of its strengths is that the modules that it is made of are customizable according to the user’s requirements. Ashish Kumar discusses the benefits and the process of customization, along with a brief introduction to some useful modules.

List of Standard Modules

This appendix (alphabetically) lists of all of the standard modules that are part of the current (version 1.3.x) Apache distribution. Table 1 the modules that are compiled-in by default and Table 2 lists the ones which are not.

MODULE FUNCTION
mod_access Host based access control
mod_actions Filetype/method-based script execution
mod_alias Aliases and redirects
mod_asis The .asis file handler
mod_auth User authentication using text files
mod_autoindex Automatic directory listings
mod_cgi Invoking CGI scripts
mod_dir Basic directory handling
mod_env Passing of environments to CGI scripts
mod_imap The imagemap file handler
mod_include Server-parsed documents
mod_isapi Windows ISAPI extension support
mod_log_config User-configurable logging
mod_mime Determining document types using file extension
mod_negotiation Content negotiation
mod_setenvif Set environment variables based on client information
mod_status Server status display
mod_userdir User home directories
mod_unique_id Generate unique request identifier for every request
mod_usertrack User tracking using Cookies

Read more »


As a community supported project, the open source Apache webserver is well-proven, but can still offer an administrator headaches from timeto time when things don’t go quite as planned. In this article, I will provideyou with eight tips to help you solve the most common Apache dilemmas.

Tip #1: Know where to look

If you’re having trouble with Apache, or seeming to havetrouble with one of its modules, your first stop should be in looking overApache’s detailed error log. Depending on how your system and Apache areconfigured, the error log may live in different locations. The default locationfor this file is a file named error_log located in the logs directory insideyour Apache root installation. If you can’t find your error log, open thehttpd.conf configuration file and look for the ErrorLog directive, whichdefines the location.

Apache is initially configured to the “warn” loglevel, meaning that any problem more serious than a warning (critical,emergency, error, alert, and warn) is logged. You can adjust the logging levelin httpd.conf my manipulating the LogLevel directive.

From the Apache documentation, Table A outlines the eightavailable warning levels and provides an example of what would be logged atthat level.

If you can’t figure out why your Apache server is having aproblem, try adjusting the log level to a higher threshold to capture moreinformation. After you change the level, stop and restart your server.

There are actually two log files in Apache: error_log, whichI described in this section, and access_log. The error_log file, as you mightexpect, is the log of most interest for troubleshooting purposes. However, alsomake use of the access_log when looking for problems. This file lists all ofthe items pulled down by clients along with the HTTP error or success code.

Tip #2: Don’t let an AllowOverride ruin your day

Depending on how you want to run your web site, you canselectively alter the behavior of your Apache server by making use of .htaccessfiles. Simply put, an .htaccess file is a file in a directory that lets youmake configuration changes that affect just that folder. For example, if you’vedisabled the “Indexes” in httpd.conf for all directories, none f yourvisitors will be able to access a directory listing. You may have a singlefolder for which this access should be allowed. In this case, you would have an.htaccess file with the “Options Indexes” directive.
Read more »