blob: a641a98a12c273e4ddf582bb0dc493cbec0ed3a1 [file] [log] [blame]
<?xml version="1.0"?>
<!DOCTYPE overrideindex SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- $LastChangedRevision$ -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<overrideindex metafile="overrides.xml.meta">
<title>Override Class Index for .htaccess</title>
<summary>
<p>
This is an index of the directives that are allowed in .htaccess files for
various <directive module="core">AllowOverride</directive> settings,
organized by class. Its intended purpose is to help server administrators
verify the privileges they're granting to .htaccess users. For an overview
of how .htaccess works, see the
<a href="../howto/htaccess.html">.htaccess tutorial</a>.
</p>
<p>
To determine the set of directives that your server configuration allows
.htaccess users to use:
</p>
<ol>
<li>Start with the set of directives in the <code>AllowOverrideList</code>
for the directory in question. (By default, this is set to
<code>None</code>.)</li>
<li>Find the <code>AllowOverride</code> setting for the directory in
question. (By default, it is set to <code>None</code>.) There are two
special cases:
<ol>
<li>If your <code>AllowOverride</code> setting is <code>All</code>,
add every directive listed on this page to the list.</li>
<li>If your <code>AllowOverride</code> setting is <code>None</code>,
you're done. Only the directives in the <code>AllowOverrideList</code>
(if any) will be allowed.</li>
</ol>
</li>
<li>For each override class listed in <code>AllowOverride</code>, look up
the corresponding set of directives below and add them to the list.</li>
<li>Finally, add the set of directives that is always allowed in
.htaccess (these are listed in the
<a href="#override-all">All section</a>, below).</li>
</ol>
<p>
Several of the override classes are quite powerful and give .htaccess
users a large amount of control over the server. For a stricter approach,
set <code>AllowOverride None</code> and use
<directive module="core">AllowOverrideList</directive> to specify the
exact list of directives that .htaccess users are allowed to use.
</p>
</summary>
<!--
Provide one overridesummary element for each Override type. The content will
be sucked into the relevant section on the override index page.
-->
<overridesummary class="All">
<p>
The following directives are allowed in any .htaccess file, as long as
overrides are enabled in the server configuration.
</p>
</overridesummary>
<overridesummary class="AuthConfig">
<p>
The following directives are allowed in .htaccess files when
<code>AllowOverride AuthConfig</code> is in effect. They give .htaccess
users control over the authentication and authorization methods that are
applied to their directory subtrees, including several related utility
directives for session handling and TLS settings.
</p>
</overridesummary>
<overridesummary class="FileInfo">
<p>
The following directives are allowed in .htaccess files when
<code>AllowOverride FileInfo</code> is in effect. They give .htaccess
users a wide range of control over the responses and metadata given by the
server.
</p>
</overridesummary>
<overridesummary class="Indexes">
<p>
The following directives are allowed in .htaccess files when
<code>AllowOverride Indexes</code> is in effect. They allow .htaccess
users to control aspects of the directory index pages provided by the
server, including autoindex generation.
</p>
</overridesummary>
<overridesummary class="Limit">
<p>
The following directives are allowed in .htaccess files when
<code>AllowOverride Limit</code> is in effect. This extremely narrow
override type mostly allows the use of the legacy authorization directives
provided by <module>mod_access_compat</module>.
</p>
</overridesummary>
<overridesummary class="Options">
<p>
The following directives are allowed in .htaccess files when
<code>AllowOverride Options</code> is in effect. They give .htaccess
users access to <code>Options</code> and similar directives, as well as
directives that control the filter chain.
</p>
</overridesummary>
<!--
This is the error message for when a directive shows up in a section that
has no explicit overridesummary above.
-->
<overridesummary fallback="yes">
<p><em>
[This section has no description. It's possible that the documentation is
incomplete, or that the directives here have an incorrect or misspelled
Override type. Please consider reporting this in the
<a href="#comments_section">comments section</a>.]
</em></p>
</overridesummary>
</overrideindex>