Presented by Nishishi via Movable Type. Last Updated: 2007/11/04. 04:31:07.

ファイル一覧と403エラー

ウェブサーバのとあるディレクトリ内にindex.htmlみたいなファイルが存在しない場合、(サーバの設定によっては)ディレクトリ内のファイルを一覧するHTMLが返されます。このとき、HTTPレスポンスヘッダは何が返されてるのかな?と思って調べてみたら、「200」でした。
普通にそういうページがあるものとして扱われているのですね。

「ページは存在しないけど、エラーではなくリストを返してる」という状況なので「404」(Not Found)でも返してるのかな?と思ったんだけど、そうじゃなかったようで。
まあ、ファイルはなくてもディレクトリは存在してるんだから「404」を返すんじゃあおかしいか。

Apacheでは、.htaccessファイルとかに

Options -Indexes

と書けば、ファイル一覧ではなく、「403」エラー(Forbidden)が返されるようになります。
でも、「さくらインターネット」のレンタルサーバだと、Optionsディレクティブが使えないので、この記述はできないのですよね。書くと「500」エラー(Internal Server Error)になっちゃいます。

その場合でも、ダミーのファイルを置くなりダミーにリダイレクトするなりしてファイル一覧を表示させない方法はあるので問題はないんですが。でも、「403」エラーを返したいと思った場合、それを返すことはできないんだろうか?

……「403」エラーを返すCGIを作って、そこにリダイレクトさせれば可能かな。面倒だけど。(^_^;)

この日記へのコメントはお気軽に! コメント数:0 トラックバック数:0

コメント

コメント数: 0件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

投稿後、投稿できていないように見えることがあります。ブラウザのキャッシュが読まれているだけですので、ページを再読込すれば(=たいてい[F5]キーを押せば)投稿内容が反映されていることが確認できるはずです。連続投稿を試す前にご確認下さい。(^^;)

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)