> ### Apache HTTP Server Version 2.0

> # Apache Module mod_dir

> Description: | Provides for "trailing slash" redirects and serving directory index files
> Status: | Base
> Module Identifier: | dir_module

> ## Summary

> The index of a directory can come from one of two sources:

> - A file written by the user, typically called `index.html`. The `DirectoryIndex` directive sets the name of this file. This is controlled by `mod_dir`.
> - Otherwise, a listing generated by the server. This is provided by `mod_autoindex`.

> The two functions are separated so that you can completely remove (or replace) automatic index generation should you want to.

> A "trailing slash" redirect is issued when the server receives a request for a URL `http://servername/foo/dirname` where `dirname` is a directory. Directories require a trailing slash, so `mod_dir` issues a redirect to `http://servername/foo/dirname/`.

> ## Directives

> - DirectoryIndex

> ## DirectoryIndex Directive

> Description: | List of resources to look for when the client requests a directory
> Syntax: | DirectoryIndex local-url [local-url] ...
> Default: | `DirectoryIndex index.html`
> Context: | server config, virtual host, directory, .htaccess
> Override: | Indexes
> Status: | Base
> Module: | mod_dir

> The `DirectoryIndex` directive sets the list of resources to look for, when the client requests an index of the directory by specifying a / at the end of the a directory name. Local-url is the (%-encoded) URL of a document on the server relative to the requested directory; it is usually the name of a file in the directory. Several URLs may be given, in which case the server will return the first one that it finds. If none of the resources exist and the `Indexes` option is set, the server will generate its own listing of the directory.

> > Example `DirectoryIndex index.html`

> then a request for `http://myserver/docs/` would return `http://myserver/docs/index.html` if it exists, or would list the directory if it did not.

> Note that the documents do not need to be relative to the directory;

> > `DirectoryIndex index.html index.txt /cgi-bin/index.pl`

> would cause the CGI script `/cgi-bin/index.pl` to be executed if neither `index.html` or `index.txt` existed in a directory.

> ### Apache HTTP Server Version 2.0