Apache HTTP Server Version 2.4
This document describes the terms that are used to describe each Apache configuration directive.
A brief description of the purpose of the directive.
This indicates the format of the directive as it would appear in a configuration file. This syntax is extremely directive-specific, and is described in detail in the directive's definition. Generally, the directive name is followed by a series of one or more space-separated arguments. If an argument contains a space, the argument must be enclosed in double quotes. Optional arguments are enclosed in square brackets. Where an argument can take on more than one possible value, the possible values are separated by vertical bars "|". Literal text is presented in the default font, while argument-types for which substitution is necessary are emphasized. Directives which can take a variable number of arguments will end in "..." indicating that the last argument is repeated.
Directives use a great number of different argument types. A few common ones are defined below.
https://www.example.com/path/to/file.html
/path/to/file.html
. The
url-path represents a web-view of a resource, as
opposed to a file-system view./usr/local/apache/htdocs/path/to/file.html
.
Unless otherwise specified, a file-path which does
not begin with a slash will be treated as relative to the ServerRoot./usr/local/apache/htdocs/path/to/
.file.html
.file.html.en
contains two extensions: .html
and
.en
. For Apache directives, you may specify
extensions with or without the leading dot. In
addition, extensions are not case sensitive.text/html
.If the directive has a default value (i.e., if you omit it from your configuration entirely, the Apache Web server will behave as though you set it to a particular value), it is described here. If there is no default value, this section should say "None". Note that the default listed here is not necessarily the same as the value the directive takes in the default apache2.conf distributed with the server.
This indicates where in the server's configuration files the directive is legal. It's a comma-separated list of one or more of the following values:
apache2.conf
), but
not within any
<VirtualHost>
or <Directory>
containers. It is not allowed in .htaccess
files
at all.<VirtualHost>
containers in the server
configuration files.<Directory>
, <Location>
, <Files>
, <If>
, and <Proxy>
containers
in the server configuration files, subject to the restrictions
outlined in Configuration
Sections..htaccess
files. It may not be processed, though
depending upon the overrides currently active.The directive is only allowed within the designated context; if you try to use it elsewhere, you'll get a configuration error that will either prevent the server from handling requests in that context correctly, or will keep the server from operating at all -- i.e., the server won't even start.
The valid locations for the directive are actually the
result of a Boolean OR of all of the listed contexts. In other
words, a directive that is marked as being valid in
"server config, .htaccess
" can be used in the
apache2.conf
file and in .htaccess
files, but not within any <Directory>
or
<VirtualHost>
containers.
This directive attribute indicates which configuration
override must be active in order for the directive to be
processed when it appears in a .htaccess
file. If
the directive's context
doesn't permit it to appear in .htaccess
files,
then no context will be listed.
Overrides are activated by the AllowOverride
directive, and apply
to a particular scope (such as a directory) and all
descendants, unless further modified by other
AllowOverride
directives at
lower levels. The documentation for that directive also lists the
possible override names available.
This indicates how tightly bound into the Apache Web server the directive is; in other words, you may need to recompile the server with an enhanced set of modules in order to gain access to the directive and its functionality. Possible values for this attribute are:
This quite simply lists the name of the source module which defines the directive.
If the directive wasn't part of the original Apache version 2 distribution, the version in which it was introduced should be listed here. In addition, if the directive is available only on certain platforms, it will be noted here.