]> granicus.if.org Git - apache/blob - docs/manual/mod/directive-dict.html
Fix AllowOverrides --> AllowOverride in docs.
[apache] / docs / manual / mod / directive-dict.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2 <HTML>
3  <HEAD>
4   <TITLE>Definitions of terms used to describe Apache directives
5   </TITLE>
6  </HEAD>
7 <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
8  <BODY
9   BGCOLOR="#FFFFFF"
10   TEXT="#000000"
11   LINK="#0000FF"
12   VLINK="#000080"
13   ALINK="#FF0000"
14  >
15 <!--#include virtual="header.html" -->
16   <H1 ALIGN="CENTER">Terms Used to Describe Apache Directives</H1>
17
18   <P>
19   Each Apache configuration directive is described using a common format
20   that looks like this:
21   </P>
22   <DL>
23    <DD><A
24         HREF="#Syntax"
25         REL="Help"
26        ><STRONG>Syntax:</STRONG></A> <EM>directive-name</EM> <EM>some args</EM>
27        <BR>
28        <A
29         HREF="#Default"
30         REL="Help"
31        ><STRONG>Default:</STRONG></A>
32         <SAMP><EM>directive-name default-value</EM></SAMP>
33        <BR>
34        <A
35         HREF="#Context"
36         REL="Help"
37        ><STRONG>Context:</STRONG></A> <EM>context-list</EM>
38        <BR>
39        <A
40         HREF="#Override"
41         REL="Help"
42        ><STRONG>Override:</STRONG></A> <EM>override</EM>
43        <BR>
44        <A
45         HREF="#Status"
46         REL="Help"
47        ><STRONG>Status:</STRONG></A> <EM>status</EM>
48        <BR>
49        <A
50         HREF="#Module"
51         REL="Help"
52        ><STRONG>Module:</STRONG></A> <EM>module-name</EM>
53        <BR>
54        <A
55         HREF="#Compatibility"
56         REL="Help"
57        ><STRONG>Compatibility:</STRONG></A> <EM>compatibility notes</EM>
58    </DD>
59   </DL>
60   <P>
61   Each of the directive's attributes, complete with possible values
62   where possible, are described in this document.
63   </P>
64
65   <H2>Directive Terms</H2>
66   <UL>
67    <LI><A HREF="#Syntax">Syntax</A>
68    </LI>
69    <LI><A HREF="#Default">Default</A>
70    </LI>
71    <LI><A HREF="#Context">Context</A>
72    </LI>
73    <LI><A HREF="#Override">Override</A>
74    </LI>
75    <LI><A HREF="#Status">Status</A>
76    </LI>
77    <LI><A HREF="#Module">Module</A>
78    </LI>
79    <LI><A HREF="#Compatibility">Compatibility</A>
80    </LI>
81   </UL>
82
83   <HR>
84   <H2><A NAME="Syntax">Syntax</A></H2>
85   <P>
86   This indicates the format of the directive as it would appear in a
87   configuration file.  This syntax is extremely directive-specific, so
88   refer to the text of the directive's description for details.
89   </P>
90
91   <HR>
92   <H2><A NAME="Default">Default</A></H2>
93   <P>
94   If the directive has a default value (<EM>i.e.</EM>, if you omit it
95   from your configuration entirely, the Apache Web server will behave as
96   though you set it to a particular value), it is described here.  If
97   there is no default value, this section should say
98   &quot;<EM>None</EM>&quot;.
99   </P>
100
101   <HR>
102   <H2><A NAME="Context">Context</A></H2>
103   <P>
104   This indicates where in the server's configuration files the directive
105   is legal.  It's a comma-separated list of one or more of the following
106   values:
107   </P>
108   <DL>
109    <DT><STRONG>server config</STRONG>
110    </DT>
111    <DD>This means that the directive may be used in the server
112     configuration files (<EM>e.g.</EM>, <SAMP>httpd.conf</SAMP>,
113     <SAMP>srm.conf</SAMP>, and <SAMP>access.conf</SAMP>), but
114     <STRONG>not</STRONG> within any <SAMP>&lt;VirtualHost&gt;</SAMP> or
115     &lt;Directory&gt; containers.  It is not allowed in
116     <SAMP>.htaccess</SAMP> files at all.
117     <P>
118     </P>
119    </DD>
120    <DT><STRONG>virtual host</STRONG>
121    </DT>
122    <DD>This context means that the directive may appear inside
123     <SAMP>&lt;VirtualHost&gt;</SAMP> containers in the server
124     configuration files.
125     <P>
126     </P>
127    </DD>
128    <DT><STRONG>directory</STRONG>
129    </DT>
130    <DD>A directive marked as being valid in this context may be used
131     inside <SAMP>&lt;Directory&gt;</SAMP> containers in the server
132     configuration files.
133     <P>
134     </P>
135    </DD>
136    <DT><STRONG>.htaccess</STRONG>
137    </DT>
138    <DD>If a directive is valid in this context, it means that it can
139     appear inside <EM>per</EM>-directory <SAMP>.htaccess</SAMP> files.
140     It may not be processed, though depending upon the
141     <A
142      HREF="#Override"
143      REL="Help"
144     >overrides</A>
145     currently active.
146     <P>
147     </P>
148    </DD>
149   </DL>
150   <P>
151   The directive is <EM>only</EM> allowed within the designated context;
152   if you try to use it elsewhere, you'll get a configuration error that
153   will either prevent the server from handling requests in that context
154   correctly, or will keep the server from operating at all --
155   <EM>i.e.</EM>, the server won't even start.
156   </P>
157   <P>
158   The valid locations for the directive are actually the result of a
159   Boolean OR of all of the listed contexts.  In other words, a directive
160   that is marked as being valid in &quot;<SAMP>server config,
161   .htaccess</SAMP>&quot; can be used in the <SAMP>httpd.conf</SAMP> file
162   and in <SAMP>.htaccess</SAMP> files, but not within any
163   &lt;Directory&gt; or &lt;VirtualHost&gt; containers.
164   </P>
165
166   <HR>
167   <H2><A NAME="Override">Override</A></H2>
168   <P>
169   This directive attribute indicates which configuration override must
170   be active in order for the directive to be processed when it appears
171   in a <SAMP>.htaccess</SAMP> file.  If the directive's
172   <A
173    HREF="#Context"
174    REL="Help"
175   >context</A>
176   doesn't permit it to appear in <SAMP>.htaccess</SAMP> files, this
177   attribute should say &quot;<EM>Not applicable</EM>&quot;.
178   </P>
179   <P>
180   Overrides are activated by the
181   <A
182    HREF="core.html#allowoverride"
183    REL="Help"
184   ><SAMP>AllowOverride</SAMP></A>
185   directive, and apply to a particular scope (such as a directory) and
186   all descendants, unless further modified by other
187   <SAMP>AllowOverride</SAMP> directives at lower levels.  The
188   documentation for that directive also lists the possible override
189   names available.
190   </P>
191
192   <HR>
193   <H2><A NAME="Status">Status</A></H2>
194   <P>
195   This indicates how tightly bound into the Apache Web server the
196   directive is; in other words, you may need to recompile the server
197   with an enhanced set of modules in order to gain access to the
198   directive and its functionality.  Possible values for this attribute
199   are:
200   </P>
201   <DL>
202    <DT><STRONG>Core</STRONG>
203    </DT>
204    <DD>If a directive is listed as having &quot;Core&quot; status, that
205     means it is part of the innermost portions of the Apache Web server,
206     and is always available.
207     <P>
208     </P>
209    </DD>
210    <DT><STRONG>Base</STRONG>
211    </DT>
212    <DD>A directive labeled as having &quot;Base&quot; status is
213     supported by one of the standard Apache modules which is compiled
214     into the server by default, and is therefore normally available
215     unless you've taken steps to remove the module from your configuration.
216     <P>
217     </P>
218    </DD>
219    <DT><STRONG>Extension</STRONG>
220    </DT>
221    <DD>A directive with &quot;Extension&quot; status is provided by one
222     of the modules included with the Apache server kit, but the module
223     isn't normally compiled into the server.  To enable the directive
224     and its functionality, you will need to change the server build
225     configuration files and re-compile Apache.
226     <P>
227     </P>
228    </DD>
229    <DT><STRONG>Experimental</STRONG>
230    </DT>
231    <DD>&quot;Experimental&quot; status indicates that the directive is
232     available as part of the Apache kit, but you're on your own if you
233     try to use it.  The directive is being documented for completeness,
234     and is not necessarily supported.  The module which provides the
235     directive may or may not be compiled in by default; check the top of
236     the page which describes the directive and its module to see if it
237     remarks on the availability.
238     <P>
239     </P>
240    </DD>
241   </DL>
242
243   <HR>
244   <H2><A NAME="Module">Module</A></H2>
245   <P>
246   This quite simply lists the name of the source module which defines
247   the directive.
248   </P>
249
250   <HR>
251   <H2><A NAME="Compatibility">Compatibility</A></H2>
252   <P>
253   If the directive wasn't part of the original Apache version 1
254   distribution, the version in which it was introduced should be listed
255   here.  If the directive has the same name as one from the NCSA HTTPd
256   server, any inconsistencies in behaviour between the two should also
257   be mentioned.  Otherwise, this attribute should say &quot;<EM>No
258   compatibility issues.</EM>&quot;
259   </P>
260 <!--#include virtual="footer.html" -->
261  </BODY>
262 </HTML>