.htaccess活用法(9).htaccess(拡張子がhtaccessということで、ドットが必要です。ファイル名がないので最初戸惑いますが、こういうものだと思ってください。)が利用可能だと、
9.index.cgiやindex.phpをトップページにする方法
http://www.example.com ← PC用サイト としても悪くはないですが、一本化できればそれに越したことはないケースもあるでしょう。 このような場合に、アクセスしてきた端末が携帯かパソコンなのかを判別する必要があります。携帯端末ではJavascriptは使えませんので、端末(ユーザーエージェント)の判別はCGI(perl)やPHPなどのサーバサイドで動くプログラムで判別する必要があります。しかし、これだと、
http://www.example.com/index.cgi がトップページとなります。これでは、トップページのURLが長すぎます。かえって二つに分けたほうが良いことになってしまいます。 ここで、http://www.example.comにアクセスした場合に、実際にはindex.cgiやindex.phpが表示されれば良いことになります。これも、.htaccessで可能なんですよ。 DirectoryIndex index.html index.cgi index.php index.shtml と書くと、「/(スラッシュ)」止めのURLでアクセスされた場合に表示させるファイル名の優先順位を指定できます。つまり、上のような設定をしている場合は、index.htmlがそのディレクトリー内にあれば、「/(スラッシュ)」止めのURLでのアクセス時にindex.htmlのコンテンツが表示されますが(http://www.example.comでアクセスしてもhttp://www.example.com/index.htmlでアクセスしても同一のコンテンツが表示されるということ)、index.htmlが無ければindex.cgiを探しに行き、さらに、それが無ければ、index.phpをと見ていきます。列挙されているファイル名全て見て、どれも存在しなかった場合で、かつ、「Options Indexes」がonに設定されている場合は、そのディレクトリー内のファイル一覧が表示されますので、注意が必要です。「Options Indexes」をonにする場合の危険性については、こちらでも説明していますので、参照してください。
もちろん、あなたが利用しているサーバで既にindex.cgiやindex.phpでもトップページとして表示できるようになっているならば、改めて設定する必要はありません。念のため。
次のページでは、MIMEタイプの設定をちゃんとしていないと思わぬセキュリティホールになる可能性について解説します。 |