ディレクトリの内容を見せる見せない

URL にディレクトリ名までしか指定しなかった場合、 お使いのレンタルサーバではどのようにブラウザーに表示されますか? そのディレクトリに存在するファイルの一覧が表示されますか? それとも「Forbidden」のステータスが表示されますか?

レンタルサーバによってサーバーのデフォルトの設定はまちまちです。 もし、お使いのサーバーで「.htaccess」使えるのであれば、 ご自分である程度指定することができます。ここではその方法をご説明します。

ファイル一覧を見せないようにするには

お使いのサーバーがファイル一覧を見せるようになっている場合、 それを見せないようにするにはどうするかをご説明します。 一番簡単なのは、各ディレクトリ内に「index.html」を用意すればいいわけですが、 いちいちすべてのディレクトリに意味の無い「index.html」を用意するもの手間です。

.htaccess を使えば、 すべてのディレクトリに対してファイル一覧を見せないようにすることができます。 書き方は 2 通りありますので、それぞれ説明します。 お好きなほう、もしくはお使いのサーバーで動作するほうを選んでください。

IndexIgnore

まずはテキストエディターを開いて以下の 1 行を書いてください。

IndexIgnore *

.htaccess をサーバーのディレクトリ内にアップロードしたら、 ブラウザーでアクセスしてみてください。下図のように何も表示されなくなるはずです。 ただし、そのディレクトリ内に「index.html」がある場合には確認できませんので、 注意してください。

Options -Indexes

IndexIgnore ではファイルの一覧機能は有効になったままで、 表示させないファイルパターンを指定するという方法でしたが、 ここでは、ファイル一覧機能自体を無効にしてしまうという方法をご紹介します。 IndexIgnore のときと同様に .htaccess に以下の 1 行を記述してサーバーにアップロードしてください。

Options -Indexes

もしこの設定が有効になると、ブラウザーでアクセスした際には 403 Forbidden と表示されるはずです。

Options +Indexes

あまり利用シーンはないかもしれませんが、これまでの話とは逆に、ディレクトリ内のファイル一覧を表示したいなら、次のように記述します。

Options +Indexes