1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>mod_autoindex - Apache HTTP Server</title>
9 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
14 <div id="page-header">
15 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
16 <p class="apache">Apache HTTP Server Version 2.0</p>
17 <img alt="" src="../images/feather.gif" /></div>
18 <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
20 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.0</a> > <a href="./">Modules</a></div>
21 <div id="page-content">
22 <div id="preamble"><h1>Apache Module mod_autoindex</h1>
24 <p><span>Available Languages: </span><a href="../en/mod/mod_autoindex.html" title="English"> en </a> |
25 <a href="../ja/mod/mod_autoindex.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
26 <a href="../ko/mod/mod_autoindex.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
27 <a href="../tr/mod/mod_autoindex.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
29 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Generates directory indexes,
30 automatically, similar to the Unix <code>ls</code> command or the
31 Win32 <code>dir</code> shell command</td></tr>
32 <tr><th><a href="module-dict.html#Status">Status:</a></th><td>Base</td></tr>
33 <tr><th><a href="module-dict.html#ModuleIdentifier">Module Identifier:</a></th><td>autoindex_module</td></tr>
34 <tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_autoindex.c</td></tr></table>
37 <p>The index of a directory can come from one of two
41 <li>A file written by the user, typically called
42 <code>index.html</code>. The <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> directive sets the
43 name of this file. This is controlled by
44 <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code>.</li>
46 <li>Otherwise, a listing generated by the server. The other
47 directives control the format of this listing. The <code class="directive"><a href="#addicon">AddIcon</a></code>, <code class="directive"><a href="#addiconbyencoding">AddIconByEncoding</a></code> and
48 <code class="directive"><a href="#addiconbytype">AddIconByType</a></code> are
49 used to set a list of icons to display for various file types;
50 for each file listed, the first icon listed that matches the
51 file is displayed. These are controlled by
52 <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code>.</li>
54 <p>The two functions are separated so that you can completely
55 remove (or replace) automatic index generation should you want
58 <p>Automatic index generation is enabled with using
59 <code>Options +Indexes</code>. See the
60 <code class="directive"><a href="../mod/core.html#options">Options</a></code> directive for
63 <p>If the <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code> option is given with the <code class="directive"><a href="#indexoptions">IndexOptions</a></code> directive,
64 the column headers are links that control the order of the
65 display. If you select a header link, the listing will be
66 regenerated, sorted by the values in that column. Selecting the
67 same header repeatedly toggles between ascending and descending
68 order. These column header links are suppressed with
69 <code class="directive"><a href="#indexoptions">IndexOptions</a></code> directive's
70 <code>SuppressColumnSorting</code> option.</p>
72 <p>Note that when the display is sorted by "Size", it's the
73 <em>actual</em> size of the files that's used, not the
74 displayed value - so a 1010-byte file will always be displayed
75 before a 1011-byte file (if in ascending order) even though
76 they both are shown as "1K".</p>
78 <div id="quickview"><h3 class="directives">Directives</h3>
80 <li><img alt="" src="../images/down.gif" /> <a href="#addalt">AddAlt</a></li>
81 <li><img alt="" src="../images/down.gif" /> <a href="#addaltbyencoding">AddAltByEncoding</a></li>
82 <li><img alt="" src="../images/down.gif" /> <a href="#addaltbytype">AddAltByType</a></li>
83 <li><img alt="" src="../images/down.gif" /> <a href="#adddescription">AddDescription</a></li>
84 <li><img alt="" src="../images/down.gif" /> <a href="#addicon">AddIcon</a></li>
85 <li><img alt="" src="../images/down.gif" /> <a href="#addiconbyencoding">AddIconByEncoding</a></li>
86 <li><img alt="" src="../images/down.gif" /> <a href="#addiconbytype">AddIconByType</a></li>
87 <li><img alt="" src="../images/down.gif" /> <a href="#defaulticon">DefaultIcon</a></li>
88 <li><img alt="" src="../images/down.gif" /> <a href="#headername">HeaderName</a></li>
89 <li><img alt="" src="../images/down.gif" /> <a href="#indexignore">IndexIgnore</a></li>
90 <li><img alt="" src="../images/down.gif" /> <a href="#indexoptions">IndexOptions</a></li>
91 <li><img alt="" src="../images/down.gif" /> <a href="#indexorderdefault">IndexOrderDefault</a></li>
92 <li><img alt="" src="../images/down.gif" /> <a href="#readmename">ReadmeName</a></li>
96 <li><img alt="" src="../images/down.gif" /> <a href="#query">Autoindex Request Query Arguments</a></li>
98 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
100 <h2><a name="query" id="query">Autoindex Request Query Arguments</a></h2>
103 <p>Apache 2.0.23 reorganized the Query Arguments for Column
104 Sorting, and introduced an entire group of new query options.
105 To effectively eliminate all client control over the output,
106 the <code><a href="#indexoptions.ignoreclient">IndexOptions
107 IgnoreClient</a></code> option was introduced.</p>
109 <p>The column sorting headers themselves are self-referencing
110 hyperlinks that add the sort query options shown below. Any
111 option below may be added to any request for the directory
115 <li><code>C=N</code> sorts the directory by file name</li>
117 <li><code>C=M</code> sorts the directory by last-modified
118 date, then file name</li>
120 <li><code>C=S</code> sorts the directory by size, then file
123 <li class="separate"><code>C=D</code> sorts the directory by description, then
126 <li><code>O=A</code> sorts the listing in Ascending
129 <li class="separate"><code>O=D</code> sorts the listing in Descending
132 <li><code>F=0</code> formats the listing as a simple list
133 (not FancyIndexed)</li>
135 <li><code>F=1</code> formats the listing as a FancyIndexed
138 <li class="separate"><code>F=2</code> formats the listing as an
139 HTMLTable FancyIndexed list</li>
141 <li><code>V=0</code> disables version sorting</li>
143 <li class="separate"><code>V=1</code> enables version sorting</li>
145 <li><code>P=<var>pattern</var></code> lists only files matching
146 the given <var>pattern</var></li>
149 <p>Note that the 'P'attern query argument is tested
150 <em>after</em> the usual <code class="directive"><a href="#indexignore">IndexIgnore</a></code> directives are processed,
151 and all file names are still subjected to the same criteria as
152 any other autoindex listing. The Query Arguments parser in
153 <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> will stop abruptly when an unrecognized
154 option is encountered. The Query Arguments must be well formed,
155 according to the table above.</p>
157 <p>The simple example below, which can be clipped and saved in
158 a header.html file, illustrates these query options. Note that
159 the unknown "X" argument, for the submit button, is listed last
160 to assure the arguments are all parsed before mod_autoindex
161 encounters the X=Go input.</p>
163 <div class="example"><p><code>
164 <form action="" method="get"><br />
165 <span class="indent">
166 Show me a <select name="F"><br />
167 <span class="indent">
168 <option value="0"> Plain list</option><br />
169 <option value="1" selected="selected"> Fancy list</option><br />
170 <option value="2"> Table list</option><br />
172 </select><br />
173 Sorted by <select name="C"><br />
174 <span class="indent">
175 <option value="N" selected="selected"> Name</option><br />
176 <option value="M"> Date Modified</option><br />
177 <option value="S"> Size</option><br />
178 <option value="D"> Description</option><br />
180 </select><br />
181 <select name="O"><br />
182 <span class="indent">
183 <option value="A" selected="selected"> Ascending</option><br />
184 <option value="D"> Descending</option><br />
186 </select><br />
187 <select name="V"><br />
188 <span class="indent">
189 <option value="0" selected="selected"> in Normal order</option><br />
190 <option value="1"> in Version order</option><br />
192 </select><br />
193 Matching <input type="text" name="P" value="*" /><br />
194 <input type="submit" name="X" value="Go" /><br />
200 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
201 <div class="directive-section"><h2><a name="AddAlt" id="AddAlt">AddAlt</a> <a name="addalt" id="addalt">Directive</a></h2>
202 <table class="directive">
203 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Alternate text to display for a file, instead of an
204 icon selected by filename</td></tr>
205 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddAlt <var>string</var> <var>file</var> [<var>file</var>] ...</code></td></tr>
206 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
207 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
208 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
209 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
211 <p><code class="directive">AddAlt</code> provides the alternate text to
212 display for a file, instead of an icon, for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
213 <var>File</var> is a file extension, partial filename, wild-card
214 expression or full filename for files to describe.
215 If <var>String</var> contains any whitespace, you have to enclose it
216 in quotes (<code>"</code> or <code>'</code>). This alternate text
217 is displayed if the client is image-incapable, has image loading
218 disabled, or fails to retrieve the icon.</p>
220 <div class="example"><h3>Examples</h3><p><code>
221 AddAlt "PDF file" *.pdf<br />
222 AddAlt Compressed *.gz *.zip *.Z
226 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
227 <div class="directive-section"><h2><a name="AddAltByEncoding" id="AddAltByEncoding">AddAltByEncoding</a> <a name="addaltbyencoding" id="addaltbyencoding">Directive</a></h2>
228 <table class="directive">
229 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Alternate text to display for a file instead of an icon
230 selected by MIME-encoding</td></tr>
231 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddAltByEncoding <var>string</var> <var>MIME-encoding</var>
232 [<var>MIME-encoding</var>] ...</code></td></tr>
233 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
234 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
235 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
236 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
238 <p><code class="directive">AddAltByEncoding</code> provides the alternate
239 text to display for a file, instead of an icon, for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
240 <var>MIME-encoding</var> is a valid content-encoding, such as
241 <code>x-compress</code>. If <var>String</var> contains any whitespace,
242 you have to enclose it in quotes (<code>"</code> or <code>'</code>).
243 This alternate text is displayed if the client is image-incapable,
244 has image loading disabled, or fails to retrieve the icon.</p>
246 <div class="example"><h3>Example</h3><p><code>
247 AddAltByEncoding gzip x-gzip
251 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
252 <div class="directive-section"><h2><a name="AddAltByType" id="AddAltByType">AddAltByType</a> <a name="addaltbytype" id="addaltbytype">Directive</a></h2>
253 <table class="directive">
254 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Alternate text to display for a file, instead of an
255 icon selected by MIME content-type</td></tr>
256 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddAltByType <var>string</var> <var>MIME-type</var>
257 [<var>MIME-type</var>] ...</code></td></tr>
258 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
259 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
260 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
261 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
263 <p><code class="directive">AddAltByType</code> sets the alternate text to
264 display for a file, instead of an icon, for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
265 <var>MIME-type</var> is a valid content-type, such as
266 <code>text/html</code>. If <var>String</var> contains any whitespace,
267 you have to enclose it in quotes (<code>"</code> or <code>'</code>).
268 This alternate text is displayed if the client is image-incapable,
269 has image loading disabled, or fails to retrieve the icon.</p>
271 <div class="example"><h3>Example</h3><p><code>
272 AddAltByType 'plain text' text/plain
276 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
277 <div class="directive-section"><h2><a name="AddDescription" id="AddDescription">AddDescription</a> <a name="adddescription" id="adddescription">Directive</a></h2>
278 <table class="directive">
279 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Description to display for a file</td></tr>
280 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddDescription <var>string file</var> [<var>file</var>] ...</code></td></tr>
281 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
282 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
283 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
284 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
286 <p>This sets the description to display for a file, for
287 <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
288 <var>File</var> is a file extension, partial filename, wild-card
289 expression or full filename for files to describe.
290 <var>String</var> is enclosed in double quotes (<code>"</code>).</p>
292 <div class="example"><h3>Example</h3><p><code>
293 AddDescription "The planet Mars" /web/pics/mars.gif
296 <p>The typical, default description field is 23 bytes wide. 6
297 more bytes are added by the <code><a href="#indexoptions.suppressicon">IndexOptions SuppressIcon</a></code> option, 7 bytes are
298 added by the <code><a href="#indexoptions.suppresssize">IndexOptions SuppressSize</a></code> option, and 19 bytes are
299 added by the <code><a href="#indexoptions.suppresslastmodified">IndexOptions SuppressLastModified</a></code> option.
300 Therefore, the widest default the description column is ever
301 assigned is 55 bytes.</p>
303 <p>See the <a href="#indexoptions.descriptionwidth">DescriptionWidth</a> <code class="directive"><a href="#indexoptions">IndexOptions</a></code> keyword for details on overriding the size
304 of this column, or allowing descriptions of unlimited length.</p>
306 <div class="note"><h3>Caution</h3>
307 <p>Descriptive text defined with <code class="directive">AddDescription</code>
308 may contain HTML markup, such as tags and character entities. If the
309 width of the description column should happen to truncate a tagged
310 element (such as cutting off the end of a bolded phrase), the
311 results may affect the rest of the directory listing.</p>
315 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
316 <div class="directive-section"><h2><a name="AddIcon" id="AddIcon">AddIcon</a> <a name="addicon" id="addicon">Directive</a></h2>
317 <table class="directive">
318 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Icon to display for a file selected by name</td></tr>
319 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddIcon <var>icon</var> <var>name</var> [<var>name</var>]
321 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
322 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
323 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
324 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
326 <p>This sets the icon to display next to a file ending in
327 <var>name</var> for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>. <var>Icon</var> is either a (%-escaped)
328 relative URL to the icon, or of the format <code>
329 (<var>alttext</var>,<var>url</var>)</code> where <var>alttext</var>
330 is the text tag given for an icon for non-graphical browsers.</p>
332 <p><var>Name</var> is either <code>^^DIRECTORY^^</code> for directories,
333 <code>^^BLANKICON^^</code> for blank lines (to format the list
334 correctly), a file extension, a wildcard expression, a partial
335 filename or a complete filename.</p>
337 <div class="example"><h3>Examples</h3><p><code>
338 AddIcon (IMG,/icons/image.xbm) .gif .jpg .xbm<br />
339 AddIcon /icons/dir.xbm ^^DIRECTORY^^<br />
340 AddIcon /icons/backup.xbm *~
343 <p><code class="directive"><a href="#addiconbytype">AddIconByType</a></code>
344 should be used in preference to <code class="directive">AddIcon</code>,
348 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
349 <div class="directive-section"><h2><a name="AddIconByEncoding" id="AddIconByEncoding">AddIconByEncoding</a> <a name="addiconbyencoding" id="addiconbyencoding">Directive</a></h2>
350 <table class="directive">
351 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Icon to display next to files selected by MIME
352 content-encoding</td></tr>
353 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddIconByEncoding <var>icon</var> <var>MIME-encoding</var>
354 [<var>MIME-encoding</var>] ...</code></td></tr>
355 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
356 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
357 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
358 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
360 <p>This sets the icon to display next to files with <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
361 <var>Icon</var> is either a (%-escaped) relative URL to the icon,
362 or of the format <code>(<var>alttext</var>,<var>url</var>)</code>
363 where <var>alttext</var> is the text tag given for an icon for
364 non-graphical browsers.</p>
366 <p><var>MIME-encoding</var> is a wildcard expression matching
367 required the content-encoding.</p>
369 <div class="example"><h3>Example</h3><p><code>
370 AddIconByEncoding /icons/compress.xbm x-compress
374 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
375 <div class="directive-section"><h2><a name="AddIconByType" id="AddIconByType">AddIconByType</a> <a name="addiconbytype" id="addiconbytype">Directive</a></h2>
376 <table class="directive">
377 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Icon to display next to files selected by MIME
378 content-type</td></tr>
379 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddIconByType <var>icon</var> <var>MIME-type</var>
380 [<var>MIME-type</var>] ...</code></td></tr>
381 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
382 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
383 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
384 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
386 <p>This sets the icon to display next to files of type
387 <var>MIME-type</var> for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
388 <var>Icon</var> is either a (%-escaped) relative URL to the icon,
389 or of the format <code>(<var>alttext</var>,<var>url</var>)</code>
390 where <var>alttext</var> is the text tag given for an icon for
391 non-graphical browsers.</p>
393 <p><var>MIME-type</var> is a wildcard expression matching
394 required the mime types.</p>
396 <div class="example"><h3>Example</h3><p><code>
397 AddIconByType (IMG,/icons/image.xbm) image/*
401 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
402 <div class="directive-section"><h2><a name="DefaultIcon" id="DefaultIcon">DefaultIcon</a> <a name="defaulticon" id="defaulticon">Directive</a></h2>
403 <table class="directive">
404 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Icon to display for files when no specific icon is
406 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>DefaultIcon <var>url-path</var></code></td></tr>
407 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
408 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
409 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
410 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
412 <p>The <code class="directive">DefaultIcon</code> directive sets the icon
413 to display for files when no specific icon is known, for <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code>.
414 <var>Url-path</var> is a (%-escaped) relative URL to the icon.</p>
416 <div class="example"><h3>Example</h3><p><code>
417 DefaultIcon /icon/unknown.xbm
421 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
422 <div class="directive-section"><h2><a name="HeaderName" id="HeaderName">HeaderName</a> <a name="headername" id="headername">Directive</a></h2>
423 <table class="directive">
424 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Name of the file that will be inserted at the top
425 of the index listing</td></tr>
426 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>HeaderName <var>filename</var></code></td></tr>
427 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
428 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
429 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
430 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
432 <p>The <code class="directive">HeaderName</code> directive sets the name
433 of the file that will be inserted at the top of the index
434 listing. <var>Filename</var> is the name of the file to include.</p>
436 <div class="example"><h3>Example</h3><p><code>
437 HeaderName HEADER.html
441 <p>Both HeaderName and <code class="directive"><a href="#readmename">ReadmeName</a></code> now treat
442 <var>Filename</var> as a URI path relative to the one used to
443 access the directory being indexed. If <var>Filename</var> begins
444 with a slash, it will be taken to be relative to the <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>.</p>
446 <div class="example"><h3>Example</h3><p><code>
447 HeaderName /include/HEADER.html
450 <p><var>Filename</var> must resolve to a document with a major
451 content type of <code>text/*</code> (<em>e.g.</em>,
452 <code>text/html</code>, <code>text/plain</code>, etc.). This means
453 that <var>filename</var> may refer to a CGI script if the script's
454 actual file type (as opposed to its output) is marked as
455 <code>text/html</code> such as with a directive like:</p>
457 <div class="example"><p><code>
458 AddType text/html .cgi
461 <p><a href="../content-negotiation.html">Content negotiation</a>
462 will be performed if <code class="directive"><a href="../mod/core.html#options">Options</a></code>
463 <code>MultiViews</code> is in effect. If <var>filename</var> resolves
464 to a static <code>text/html</code> document (not a CGI script) and
465 either one of the <code class="directive"><a href="../mod/core.html#options">options</a></code>
466 <code>Includes</code> or <code>IncludesNOEXEC</code> is enabled,
467 the file will be processed for server-side includes (see the
468 <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> documentation).</p>
471 <p>If the file specified by <code class="directive">HeaderName</code> contains
472 the beginnings of an HTML document (<html>, <head>, etc.)
473 then you will probably want to set <a href="#indexoptions.suppresshtmlpreamble"><code>IndexOptions
474 +SuppressHTMLPreamble</code></a>, so that these tags are not
478 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
479 <div class="directive-section"><h2><a name="IndexIgnore" id="IndexIgnore">IndexIgnore</a> <a name="indexignore" id="indexignore">Directive</a></h2>
480 <table class="directive">
481 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Adds to the list of files to hide when listing
482 a directory</td></tr>
483 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>IndexIgnore <var>file</var> [<var>file</var>] ...</code></td></tr>
484 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
485 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
486 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
487 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
489 <p>The <code class="directive">IndexIgnore</code> directive adds to the
490 list of files to hide when listing a directory. <var>File</var> is a
491 shell-style wildcard expression or full
492 filename. Multiple IndexIgnore directives add
493 to the list, rather than the replacing the list of ignored
494 files. By default, the list contains <code>.</code> (the current
497 <div class="example"><p><code>
498 IndexIgnore README .htaccess *.bak *~
502 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
503 <div class="directive-section"><h2><a name="IndexOptions" id="IndexOptions">IndexOptions</a> <a name="indexoptions" id="indexoptions">Directive</a></h2>
504 <table class="directive">
505 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Various configuration settings for directory
507 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>IndexOptions [+|-]<var>option</var> [[+|-]<var>option</var>]
509 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
510 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
511 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
512 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
514 <p>The <code class="directive">IndexOptions</code> directive specifies the
515 behavior of the directory indexing. <var>Option</var> can be one
519 <dt><a name="indexoptions.charset" id="indexoptions.charset">Charset=<var>character-set</var></a> (<em>Apache 2.0.61 and
522 <dd>The <code>Charset</code> keyword allows you to
523 specify the character set of the generated page. The
524 default is either <var>ISO-8859-1</var> or <var>UTF-8</var>,
525 depending on whether the underlying file system is unicode
528 <div class="example"><h3>Example:</h3><p><code>
529 IndexOptions Charset=UTF-8
533 <dt><a name="indexoptions.type" id="indexoptions.type">Type=<var>MIME content-type</var></a> (<em>Apache 2.0.61 and
536 <dd>The <code>Type</code> keyword allows you to
537 specify the MIME content-type of the generated page. The default
538 is <var>text/html</var>.
540 <div class="example"><h3>Example:</h3><p><code>
541 IndexOptions Type=text/plain
545 <dt><a name="indexoptions.descriptionwidth" id="indexoptions.descriptionwidth">DescriptionWidth=[<var>n</var> | *]</a> (<em>Apache 2.0.23 and
548 <dd>The <code>DescriptionWidth</code> keyword allows you to
549 specify the width of the description column in
552 <dd><code>-DescriptionWidth</code> (or unset) allows
553 <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> to calculate the best width.</dd>
555 <dd><code>DescriptionWidth=<var>n</var></code> fixes the column width to
556 <var>n</var> bytes wide.</dd>
558 <dd><code>DescriptionWidth=*</code> grows the column to the
559 width necessary to accommodate the longest description
562 <dd><strong>See the section on <code class="directive"><a href="#adddescription">AddDescription</a></code> for dangers
563 inherent in truncating descriptions.</strong></dd>
565 <dt><a name="indexoptions.fancyindexing" id="indexoptions.fancyindexing">FancyIndexing</a></dt>
567 <dd>This turns on fancy indexing of directories.</dd>
569 <dt><a name="indexoptions.foldersfirst" id="indexoptions.foldersfirst">FoldersFirst</a> (<em>Apache
570 2.0.23 and later</em>)</dt>
572 <dd>If this option is enabled, subdirectory listings will
573 <em>always</em> appear first, followed by normal files in the
574 directory. The listing is basically broken into two
575 components, the files and the subdirectories, and each is
576 sorted separately and then displayed subdirectories-first.
577 For instance, if the sort order is descending by name, and
578 <code>FoldersFirst</code> is enabled, subdirectory
579 <code>Zed</code> will be listed before subdirectory
580 <code>Beta</code>, which will be listed before normal files
581 <code>Gamma</code> and <code>Alpha</code>. <strong>This option
582 only has an effect if <a href="#indexoptions.fancyindexing"><code>FancyIndexing</code></a> is also enabled.</strong></dd>
584 <dt><a name="indexoptions.htmltable" id="indexoptions.htmltable">HTMLTable</a> (<em>Experimental,
585 Apache 2.0.23 and later</em>)</dt>
587 <dd>This experimental option with <code>FancyIndexing</code>
588 constructs a simple table for the fancy directory listing. Note this
589 will confuse older browsers. It is particularly necessary if file
590 names or description text will alternate between
591 left-to-right and right-to-left reading order, as can happen
592 on WinNT or other utf-8 enabled platforms.</dd>
594 <dt><a name="indexoptions.iconsarelinks" id="indexoptions.iconsarelinks">IconsAreLinks</a></dt>
596 <dd>This makes the icons part of the anchor for the filename, for
599 <dt><a name="indexoptions.iconheight" id="indexoptions.iconheight">IconHeight[=<var>pixels</var>]</a></dt>
601 <dd>Presence of this option, when used with <code>IconWidth</code>,
602 will cause the server to include <code>height</code> and
603 <code>width</code> attributes in the <code>img</code> tag for the
604 file icon. This allows browser to precalculate the page layout
605 without having to wait until all the images have been loaded. If no
606 value is given for the option, it defaults to the standard height of
607 the icons supplied with the Apache software.</dd>
609 <dt><a name="indexoptions.iconwidth" id="indexoptions.iconwidth">IconWidth[=<var>pixels</var>]</a></dt>
611 <dd>Presence of this option, when used with <code>IconHeight</code>,
612 will cause the server to include <code>height</code> and
613 <code>width</code> attributes in the <code>img</code> tag for
614 the file icon. This allows browser to precalculate the page
615 layout without having to wait until all the images have been
616 loaded. If no value is given for the option, it defaults to
617 the standard width of the icons supplied with the Apache
620 <dt><a name="indexoptions.ignorecase" id="indexoptions.ignorecase">IgnoreCase</a></dt>
622 <dd>If this option is enabled, names are sorted in a case-insensitive
623 manner. For instance, if the sort order is ascending by name, and
624 <code>IgnoreCase</code> is enabled, file Zeta will be listed after
625 file alfa (Note: file GAMMA will always be listed before file gamma).
628 <dt><a name="indexoptions.ignoreclient" id="indexoptions.ignoreclient">IgnoreClient</a></dt>
630 <dd>This option causes <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> to ignore all
631 query variables from the client, including sort order (implies
632 <code><a href="#indexoptions.suppresscolumnsorting">SuppressColumnSorting</a></code>.)</dd>
634 <dt><a name="indexoptions.namewidth" id="indexoptions.namewidth">NameWidth=[<var>n</var>
637 <dd>The <code>NameWidth</code> keyword allows you to specify the width
638 of the filename column in bytes.</dd>
640 <dd><code>-NameWidth</code> (or unset) allows <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> to calculate the best width.</dd>
642 <dd><code>NameWidth=<var>n</var></code> fixes the column width to
643 <var>n</var> bytes wide.</dd>
645 <dd><code>NameWidth=*</code> grows the column to the necessary
648 <dt><a name="indexoptions.scanhtmltitles" id="indexoptions.scanhtmltitles">ScanHTMLTitles</a></dt>
650 <dd>This enables the extraction of the title from HTML documents
651 for fancy indexing. If the file does not have a description
652 given by <code class="directive"><a href="#adddescription">AddDescription</a></code>
653 then httpd will read the document for the value of the
654 <code>title</code> element. This is CPU and disk intensive.</dd>
656 <dt><a name="indexoptions.suppresscolumnsorting" id="indexoptions.suppresscolumnsorting">SuppressColumnSorting</a></dt>
658 <dd>If specified, Apache will not make the column headings in a
659 FancyIndexed directory listing into links for sorting. The
660 default behavior is for them to be links; selecting the
661 column heading will sort the directory listing by the values
662 in that column. <strong>Prior to Apache 2.0.23, this also
663 disabled parsing the Query Arguments for the sort
664 string.</strong> That behavior is now controlled by <a href="#indexoptions.ignoreclient"><code>IndexOptions
665 IgnoreClient</code></a> in Apache 2.0.23.</dd>
667 <dt><a name="indexoptions.suppressdescription" id="indexoptions.suppressdescription">SuppressDescription</a></dt>
669 <dd>This will suppress the file description in fancy indexing
670 listings. By default, no file descriptions are defined, and
671 so the use of this option will regain 23 characters of screen
672 space to use for something else. See <code class="directive"><a href="#adddescription">AddDescription</a></code> for information about setting the file
673 description. See also the <code><a href="#indexoptions.descriptionwidth">DescriptionWidth</a></code>
674 index option to limit the size of the description column.</dd>
676 <dt><a name="indexoptions.suppresshtmlpreamble" id="indexoptions.suppresshtmlpreamble">SuppressHTMLPreamble</a></dt>
678 <dd>If the directory actually contains a file specified by the
679 <code class="directive"><a href="#headername">HeaderName</a></code>
680 directive, the module usually includes the contents of the file
681 after a standard HTML preamble (<code><html></code>,
682 <code><head></code>, <em>et cetera</em>). The
683 <code>SuppressHTMLPreamble</code> option disables this behaviour,
684 causing the module to start the display with the header file
685 contents. The header file must contain appropriate HTML instructions
686 in this case. If there is no header file, the preamble is generated
689 <dt><a name="indexoptions.suppressicon" id="indexoptions.suppressicon">SuppressIcon</a> (<em>Apache
690 2.0.23 and later</em>)</dt>
692 <dd>This will suppress the icon in fancy indexing listings.
693 Combining both <code>SuppressIcon</code> and
694 <code>SuppressRules</code> yields proper HTML 3.2 output, which
695 by the final specification prohibits <code>img</code> and
696 <code>hr</code> elements from the <code>pre</code> block (used to
697 format FancyIndexed listings.)</dd>
699 <dt><a name="indexoptions.suppresslastmodified" id="indexoptions.suppresslastmodified">SuppressLastModified</a></dt>
701 <dd>This will suppress the display of the last modification date,
702 in fancy indexing listings.</dd>
704 <dt><a name="indexoptions.suppressrules" id="indexoptions.suppressrules">SuppressRules</a>
705 (<em>Apache 2.0.23 and later</em>)</dt>
707 <dd>This will suppress the horizontal rule lines (<code>hr</code>
708 elements) in directory listings. Combining both <code>SuppressIcon</code> and
709 <code>SuppressRules</code> yields proper HTML 3.2 output, which
710 by the final specification prohibits <code>img</code> and
711 <code>hr</code> elements from the <code>pre</code> block (used to
712 format FancyIndexed listings.)</dd>
714 <dt><a name="indexoptions.suppresssize" id="indexoptions.suppresssize">SuppressSize</a></dt>
716 <dd>This will suppress the file size in fancy indexing listings.</dd>
718 <dt><a name="indexoptions.trackmodified" id="indexoptions.trackmodified">TrackModified</a> (<em>Apache
719 2.0.23 and later</em>)</dt>
721 <dd>This returns the <code>Last-Modified</code> and <code>ETag</code>
722 values for the listed directory in the HTTP header. It is only valid
723 if the operating system and file system return appropriate stat()
724 results. Some Unix systems do so, as do OS2's JFS and Win32's
725 NTFS volumes. OS2 and Win32 FAT volumes, for example, do not.
726 Once this feature is enabled, the client or proxy can track
727 changes to the list of files when they perform a <code>HEAD</code>
728 request. Note some operating systems correctly track new and
729 removed files, but do not track changes for sizes or dates of
730 the files within the directory. <strong>Changes to the size
731 or date stamp of an existing file will not update the
732 <code>Last-Modified</code> header on all Unix platforms.</strong>
733 If this is a concern, leave this option disabled.</dd>
735 <dt><a name="indexoptions.versionsort" id="indexoptions.versionsort">VersionSort</a>
736 (<em>Apache 2.0a3 and later</em>)</dt>
738 <dd>The <code>VersionSort</code> keyword causes files containing
739 version numbers to sort in a natural way. Strings are sorted as
740 usual, except that substrings of digits in the name and
741 description are compared according to their numeric value.
743 <div class="example"><h3>Example:</h3><p><code>
752 <p>If the number starts with a zero, then it is considered to
755 <div class="example"><p><code>
763 <dt><a name="indexoptions.xhtml" id="indexoptions.xhtml">XHTML</a>
764 (<em>Apache 2.0.49 and later</em>)</dt>
766 <dd>The <code>XHTML</code> keyword forces <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code>
767 to emit XHTML 1.0 code instead of HTML 3.2.</dd>
771 <dl><dt>Incremental IndexOptions</dt>
773 <p>Apache 1.3.3 introduced some significant changes in the
774 handling of <code class="directive">IndexOptions</code> directives. In
778 <li>Multiple <code class="directive">IndexOptions</code> directives for a
779 single directory are now merged together. The result of:
781 <div class="example"><p><code>
782 <Directory /foo>
783 <span class="indent">
784 IndexOptions HTMLTable<br />
785 IndexOptions SuppressColumnsorting
790 <p>will be the equivalent of</p>
792 <div class="example"><p><code>
793 IndexOptions HTMLTable SuppressColumnsorting
797 <li>The addition of the incremental syntax (<em>i.e.</em>, prefixing
798 keywords with <code>+</code> or <code>-</code>).</li>
801 <p>Whenever a '+' or '-' prefixed keyword is encountered, it
802 is applied to the current <code class="directive">IndexOptions</code>
803 settings (which may have been inherited from an upper-level
804 directory). However, whenever an unprefixed keyword is processed, it
805 clears all inherited options and any incremental settings encountered
806 so far. Consider the following example:</p>
808 <div class="example"><p><code>
809 IndexOptions +ScanHTMLTitles -IconsAreLinks FancyIndexing<br />
810 IndexOptions +SuppressSize
813 <p>The net effect is equivalent to <code>IndexOptions FancyIndexing
814 +SuppressSize</code>, because the unprefixed <code>FancyIndexing</code>
815 discarded the incremental keywords before it, but allowed them to
816 start accumulating again afterward.</p>
818 <p>To unconditionally set the <code class="directive">IndexOptions</code> for
819 a particular directory, clearing the inherited settings, specify
820 keywords without any <code>+</code> or <code>-</code> prefixes.</p>
825 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
826 <div class="directive-section"><h2><a name="IndexOrderDefault" id="IndexOrderDefault">IndexOrderDefault</a> <a name="indexorderdefault" id="indexorderdefault">Directive</a></h2>
827 <table class="directive">
828 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets the default ordering of the directory index</td></tr>
829 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>IndexOrderDefault Ascending|Descending
830 Name|Date|Size|Description</code></td></tr>
831 <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>IndexOrderDefault Ascending Name</code></td></tr>
832 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
833 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
834 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
835 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
837 <p>The <code class="directive">IndexOrderDefault</code> directive is used
838 in combination with the <code><a href="#indexoptions.fancyindexing">FancyIndexing</a></code> index option. By default, fancyindexed
839 directory listings are displayed in ascending order by filename; the
840 <code class="directive">IndexOrderDefault</code> allows you to change this
841 initial display order.</p>
843 <p><code class="directive">IndexOrderDefault</code> takes two
844 arguments. The first must be either <code>Ascending</code> or
845 <code>Descending</code>, indicating the direction of the sort.
846 The second argument must be one of the keywords <code>Name</code>,
847 <code>Date</code>, <code>Size</code>, or <code>Description</code>,
848 and identifies the primary key. The secondary key is
849 <em>always</em> the ascending filename.</p>
851 <p>You can force a directory listing to only be displayed in a
852 particular order by combining this directive with the <code><a href="#indexoptions.suppresscolumnsorting">SuppressColumnSorting</a></code> index option; this will prevent
853 the client from requesting the directory listing in a different
857 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
858 <div class="directive-section"><h2><a name="ReadmeName" id="ReadmeName">ReadmeName</a> <a name="readmename" id="readmename">Directive</a></h2>
859 <table class="directive">
860 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Name of the file that will be inserted at the end
861 of the index listing</td></tr>
862 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ReadmeName <var>filename</var></code></td></tr>
863 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
864 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>Indexes</td></tr>
865 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
866 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_autoindex</td></tr>
868 <p>The <code class="directive">ReadmeName</code> directive sets the name
869 of the file that will be appended to the end of the index
870 listing. <var>Filename</var> is the name of the file to include, and
871 is taken to be relative to the location being indexed. If
872 <var>Filename</var> begins with a slash, it will be taken to be
873 relative to the <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>.
876 <div class="example"><h3>Example</h3><p><code>
877 ReadmeName FOOTER.html
880 <div class="example"><h3>Example 2</h3><p><code>
881 ReadmeName /include/FOOTER.html
884 <p>See also <code class="directive"><a href="#headername">HeaderName</a></code>, where this behavior is described in greater
889 <div class="bottomlang">
890 <p><span>Available Languages: </span><a href="../en/mod/mod_autoindex.html" title="English"> en </a> |
891 <a href="../ja/mod/mod_autoindex.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
892 <a href="../ko/mod/mod_autoindex.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
893 <a href="../tr/mod/mod_autoindex.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
894 </div><div id="footer">
895 <p class="apache">Copyright 2009 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
896 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>