自動インデックス (Automatic index)

ディレクトリ表示の有効化と無効化

ディレクトリのインデックスの一覧は、

Options +Indexes
Options ディレクティブ - core - Apache HTTP サーバ バージョン 2.2

とすることで、

のように表示されるようになります。この表示を無効としたいならば、

Options -Indexes

とします。以降はレスポンスで「403 Forbidden」が返されるようになり、

のような表示となります。

ディレクトリの一覧を非表示にする目的で、

DirectoryIndex index.html /error.html

のようにエラーページへリダイレクトするのは不適切です。これではレスポンスで「200」が返され、人間以外にはそれがエラーであることが認識できなくなります。よって、

<FilesMatch "^\.ht">
    Order Allow,Deny
    Deny from all
</FilesMatch>

のようにアクセスを拒否するファイルがあるならば、

DirectoryIndex index.htm .ht

としてそのファイルを返します。こうすることで「403」となります。

表示のカスタマイズ

ファイルとフォルダの分離

ファイルとフォルダが混在していては判別しがたいため、これを分けて表示するようにします。

IndexOptions +FancyIndexing
IndexOptions +FoldersFirst
IndexOptions ディレクティブ

これは、

IndexOptions +FancyIndexing +FoldersFirst

のように記述しても同じ意味です。結果は下図のようになります。

並べ替え

上の図で「aa/」より「Ab/」が上になるのは、大文字と小文字が区別してソートされているためです。これを大文字と小文字の区別なくソートするには、

IndexOptions +IgnoreCase

を追加します。

不要なファイルの非表示

一覧に表示したくないファイルがある場合には、

IndexIgnore *.ini _settings
IndexIgnore ディレクティブ - mod_autoindex - Apache HTTP サーバ バージョン 2.2

のようにします。

アイコンの表示

アイコンが「?」ではファイルの種類を判別しがたいため、

AddIcon /icons/script.gif .js
AddIcon ディレクティブ

とするとアイコンを変更できます。

既定のアイコンは、Apacheのインストール フォルダのApache Software Foundation/Apache2.2/iconsにあり、パスを/icons/とすると、このフォルダを指定することになります。