Apache Core Features 2
Syntax:
AcceptFilter on|off
Default:
AcceptFilter on
Context:
server configt
Status:
core
Compatibility:
AcceptFilter is available in Apache 1.3.22 and later
AcceptFilter controls a BSD specific filter optimization. It is compiled in by
default - and switched on by default if your system supports it (setsocketopt() option
SO_ACCEPTFILTER). Currently only FreeBSD supports this.
See the filter section on
performance
hints for more information.
The compile time flag AP_ACCEPTFILTER_OFF can be used to change the default to
'off'. httpd -V and httpd -L will show compile time defaults and
whether or not SO_ACCEPTFILTER was defined during the compile.
Syntax:
AcceptMutex uslock|pthread|sysvsem|fcntl|flock|os2sem|tpfcore|none|default
Default:
AcceptMutex default
Context:
server config
Status:
core
Compatibility:
AcceptMutex is available in Apache 1.3.21 and later.
AcceptMutex controls which accept() mutex method Apache will use. Not all
methods are available on all platforms, since the suite of methods is determined at
compile-time. For a list of which methods are available for your particular build, the httpd
-V command line option will list them out.
The compile time flags -D HAVE_METHOD_SERIALIZED_ACCEPT can be used to add
different methods to your build, or one can edit the include/ap_config.h file for
your particular platform.
This directive has no effect on Microsoft Windows.
See the performance tuning
guide for more information.
Syntax:
AccessConfig file-path|directory-path|wildcard-path
Default:
AccessConfig conf/access.conf
Context:
server config, virtual host
Status:
core
Compatibility:
The ability to specify a directory, rather than a file name, is only available in Apache
1.3.13 and later. This directive will be eliminated in version 2.0.
The server will read this file for more directives after reading the ResourceConfig file. File-path is relative to the
ServerRoot. This feature can be disabled using:
AccessConfig /dev/null
Or, on Win32 servers,
AccessConfig nul
Historically, this file only contained <Directory> sections; in
fact it can now contain any server directive allowed in the server config context.
However, since Apache version 1.3.4, the default access.conf file which ships
with Apache contains only comments, and all directives are placed in the main server
configuration file, httpd.conf.
If AccessConfig points to a directory, rather than a file, Apache will read
all files in that directory, and any subdirectory, and parse those as configuration files.
Alternatively you can use a wildcard to limit the scope; i.e to only *.conf files.
Note that by default any file in the specified directory will be loaded as a
configuration file.
So make sure that you don't have stray files in this directory by mistake, such as
temporary files created by your editor, for example.
See also: Include and ResourceConfig.
Syntax:
AccessFileName filename [filename] ...
Default:
AccessFileName .htaccess
Context:
server config, virtual host
Status:
core
Compatibility:
AccessFileName can accept more than one filename only in Apache 1.3 and later
When returning a document to the client the server looks for the first existing access
control file from this list of names in every directory of the path to the document, if access
control files are enabled for that directory. For example:
AccessFileName .acl
before returning the document /usr/local/web/index.html, the server will read /.acl, /usr/.acl,
/usr/local/.acl and /usr/local/web/.acl for directives, unless they have been disabled with
<Directory />
AllowOverride None
</Directory>
See Also: AllowOverride and Configuration Files
Syntax:
AddDefaultCharset On|Off|charset
Context:
all
Status:
core
Default:
AddDefaultCharset Off
Compatibility:
AddDefaultCharset is only available in Apache 1.3.12 and later
This directive specifies the name of the character set that will be added to any response
that does not have any parameter on the content type in the HTTP headers. This will override
any character set specified in the body of the document via a META tag. A setting
of AddDefaultCharset Off disables this functionality. AddDefaultCharset On
enables Apache's internal default charset of iso-8859-1 as required by the
directive. You can also specify an alternate charset to be used.
For example:
AddDefaultCharset utf-8
Note: This will not have any effect on the Content-Type and character set for
default Apache-generated status pages (such as '404 Not Found' or '301 Moved Permanently')
because those have an actual character set (that in which the hard-coded page content
is written) and don't need to have a default applied.
Syntax:
AddModule module [module] ...
Context:
server config
Status:
core
Compatibility:
AddModule is only available in Apache 1.2 and later
The server can have modules compiled in which are not actively in use. This directive can
be used to enable the use of those modules. The server comes with a pre-loaded list of active
modules; this list can be cleared with the ClearModuleList
directive.
For example:
AddModule mod_include.c
The ordering of AddModule lines is important. Modules are listed in reverse
priority order --- the ones that come later can override the behavior of those that come
earlier. This can have visible effects; for instance, if UserDir followed Alias, you couldn't
alias out a particular user's home directory. For more information and a recommended ordering,
see src/Configuration.tmpl in the Apache source distribution.
See also: ClearModuleList and
LoadModule
Syntax:
AllowOverride All|None|directive-type [directive-type] ...
Default:
AllowOverride All
Context:
directory
Status:
core
When the server finds an .htaccess file (as specified by AccessFileName)
it needs to know which directives declared in that file can override earlier access
information.
Note: AllowOverride is only valid in <Directory>
sections, not in <Location> or <Files> sections, as implied by the Context
section above.
When this directive is set to None, then .htaccess files are completely
ignored. In this case, the server will not even attempt to read .htaccess files in the
filesystem.
When this directive is set to All, then any directive which has the .htaccess
Context is allowed in .htaccess files.
The directive-type can be one of the following groupings of directives.
- AuthConfig
- Allow use of the authorization directives (AuthDBMGroupFile,
AuthDBMUserFile,
AuthGroupFile, AuthName, AuthType,
AuthUserFile, Require, etc.).
- FileInfo
- Allow use of the directives controlling document types (AddEncoding,
AddLanguage,
AddType,
DefaultType, ErrorDocument,
LanguagePriority,
etc.).
- Indexes
- Allow use of the directives controlling directory indexing (AddDescription,
AddIcon,
AddIconByEncoding,
AddIconByType,
DefaultIcon,
DirectoryIndex,
FancyIndexing,
HeaderName,
IndexIgnore,
IndexOptions,
ReadmeName, etc.).
- Limit
- Allow use of the directives controlling host access (Allow,
Deny and
Order).
- Options
- Allow use of the directives controlling specific directory features (Options
and XBitHack).
Example:
AllowOverride AuthConfig Indexes
See Also: AccessFileName and
Configuration Files
Syntax:
AuthName auth-domain
Context:
directory, .htaccess
Override:
AuthConfig
Status:
core
This directive sets the name of the authorization realm for a directory. This realm is
given to the client so that the user knows which username and password to send. AuthName
takes a single argument; if the realm name contains spaces, it must be enclosed in quotation
marks. It must be accompanied by AuthType and Require
directives, and directives such as
AuthUserFile and
AuthGroupFile to work.
For example:
AuthName "Top Secret"
The string provided for the AuthName is what will appear in the password
dialog provided by most browsers.
See also:
Authentication,
Authorization, and Access Control
Syntax:
AuthType Basic|Digest
Context:
directory, .htaccess
Override:
AuthConfig
Status:
core
This directive selects the type of user authentication for a directory. Only Basic
and Digest are currently implemented. It must be accompanied by AuthName and Require directives, and directives
such as AuthUserFile
and AuthGroupFile
to work.
See also:
Authentication,
Authorization, and Access Control
|