DirectoryIndex の設定
久しぶりに昔のブログからネタを引っ張ってきました。
大半のWebサーバーでは、URIの末尾にファイル名を指定せずに、ディレクトリ名までを入力してアクセスした際には index.html や index.htm 等を表示するよう設定されています。
この設定は、 .htaccess を使うことによって簡単に変更することができます。
例えば、
DirectoryIndex index.php
と書いた .htaccess を、 sample/ というディレクトリに置いた場合、
http://www.servername.com/sample/
は、http://www.servername.com/sample/index.php へのアクセスとなります。
別に index.*** でなくても、
DirectoryIndex toppage.html
とすれば、 http://www.servername.com/sample/toppage.html へのアクセスとなります。
また、複数のファイルを指定することも可能で、
DirectoryIndex index.php index.cgi index.shtml index.html index.htm
と設定した場合、index.php がない場合は index.cgi 、それもなければ index.shtml 、またもやなければ index.html 、これまたなければ index.htm へのアクセス、という風にサーバーが指定したファイルを左から順に探してくれます。
.htaccess は、設置したディレクトリ以下の全てのディレクトリに有効ですので、トップディレクトリにこういう具合に複数指定して置いておくと、その下の各ディレクトリに必要に応じて php なりcgi なり html なりを置くことができるので便利です。
また、そうして設定した各ファイルが全てない場合の挙動もサーバーの設定に依存します。
ディレクトリ内のファイルの一覧を自動的にリストアップするよう設定されているか、 403 Forbidden を返すよう設定されているかのどちらかが一般的です。
自動でリストアップする機能は、使い方によっては非常に便利(上記の例のようにわざわざページを用意しなくてもリストアップしてくれる)なのですが、意図せずディレクトリの中身を見られてしまって個人情報流出、という冗談みたいなとんでもないことをやらかすお間抜けな企業が後を断ちません(※そもそもブラウザでアクセスできる場所に個人情報が置いてあること自体が大問題です)。
基本的に 403 Forbidden を返すように設定する方が一般的な気がします。
さて、この設定も .htaccess にて変更可能です。
Options +Indexes
とすると、ディレクトリ内のファイルを一覧表示します。
逆に、
Options -Indexes
とすると、403 Forbidden を返します。
というわけで、基本的には403を返すようにしておき、リスティングが必要なディレクトリのみを +Indexes とするのが一番安全かと思います。
- 現在位置
- TOP > Web制作技術 > .htaccess > DirectoryIndex の設定
- 前のブログ記事
- 『利己的な遺伝子(旧題『生物=生存機械論』)』(リチャード・ドーキンス)の感想 [2007年10月 2日 02:20]
- 次のブログ記事
- リクエストのリダイレクト [2007年10月 4日 01:44]
コメント(3)
cwyxsrb http://paydayloansvmg.com/ payday loans
qlcbbr http://paydayloansbrt.com/ payday loans
ggzurdp http://paydayloans2ua.com/ payday loans
コメントする