ミケネコ研究所 ミケネコ研究所 > htaccess リファレンス > ディレクトリ制御

ディレクトリ制御

ディレクトリにいろいろな指定を行います。


主な利用例


index.html 以外をデフォルトファイルにするには

通常、スラッシュ(/) で終わるアクセスがあったときは、index.html ファイルが代替して呼ばれますが、DirectoryIndex を設定することで index.html 以外のファイルを呼び出すことができます。

DirectoryIndex index.cgi index.html index.shtml top.htm

スラッシュ(/) で終わるアクセスがあったとき、サーバは DirectoryIndex で記述されているファイルを順に探していき、見つかればそのファイルを表示します。

ディレクトリのファイル一覧表示を中止するには

通常、スラッシュ(/) で終わるアクセスがあったときに、index.html ファイルが代替して呼ばれますが、index.html ファイルが見つからない場合に、次のようなディレクトリのファイル一覧が表示されます。これは、Apache の機能です。

Index of /~lab/

Name                       Last modified       Size  Description

Parent Directory 13-May-2001 20:16 - home.html 13-May-2001 07:35 12k profile.html 13-May-2001 07:35 25k infomation.html 13-May-2001 07:35 1k

このインデクス表示は、サイトオーナーの意図に反してファイル一覧がすべて見えてしまいます。本当にこういうことがしたいと思うときはよいのですが、そうでない場合はセキュリティの観点から、中止した方が無難です。またパフォーマンスの観点からしても、インデクス表示を OFF にすると、ディレクトリの走査、ファイル情報の取得、アイコンへのアクセス、などなどのオーバーヘッドを節約することができます。次の設定は、インデクス表示を禁止する .htaccess の設定です。

Options -Indexes

この設定にしておくと、スラッシュ(/) で終わるアクセスがあったときに、index.html ファイルがない場合、403 Forbidden を返します。


リファレンス


DirectoryIndex

DirectoryIndex local-url local-url ...
DirectoryIndex index.html index.htm index.cgi

クライアントがディレクトリ名の終わりのスラッシュ (/) を指定してアクセスしたときに、サーバが探すリソースを設定します。通常は、index.html に設定されています。いくつか指定した場合には、先に書かれたものから優先して探します。

もし全て見つからなければ、Options Indexes でディレクトリ一覧の表示が許可されていれば、ディレクトリのファイルリストを表示します。許可されていなければ 、403 Forbidden を返します。

Options

Options option option ...
Options [+|-]option [+|-]option ...
# すべてのディレクトリオプションを許可
Options all

# ExecCGI と Includes のみを許可し、他をすべて不許可にする
Options ExecCGI Includes

# ExecCGI は許可し、Includes を不許可にする。その他の設定は引き継ぐ
Options +ExecCGI -Includes

許可するディレクトリオプションを指定します。option には次のようなものが選べます。option の前に、+- の記号が置かれているとき、標準設定からの差分を意味します。

All
MultiViews を除き、すべてのオプションを有効にします。
ExecCGI
CGI スクリプトの実行を可能にします。
FollowSymLinks
シンボリックリンクを有効にします。
Includes
SSI の利用を可能にします。
IncludesNOEXEC
SSI の利用を、制限付きで可能にします。SSI の機能のうち、#exec 命令と、CGIスクリプトの #include 命令が使えません。
Indexes
index.html がない場合に、ディレクトリ一覧を表示することを許可します。特別な場合を除いて、許可すべきではありません。
MultiViews
コンテンツネゴシエーションされた、MultiViews 検索を許可します。
None
すべてのオプションを無効にします。

SymLinksIfOwnerMatch
ファイル所有者に限り、シンボリックリンクを許可します。FollowSymLinks より安全です。


ミケネコの htaccess リファレンス http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/