ApacheのIndex ofの一覧表示で各ファイルやディレクトリにその説明を表示する方法を下記に紹介します。

 昨日、AutoIndex PHP Scriptというディレクトリ内の一覧を表示するソフトを紹介させて頂きました。

 実はこのソフトを見つけたのは「ディレクトリやファイルの説明が一覧で表示できないかな?」と思って何となく探していたらこのAutoIndex PHP Scriptが見つかりました。なかなか使えそうな気がしたのですが、何となく自分の中で引っかかる気がしていました。

 そして、いつものApacheが表示するファイルの一覧を眺めているとリストの左に「Description」という項目があります。あれ?Descriptionって「説明」だよな。Apacheのファイル一覧でファイルやディレクトリの説明を表示することができるのか?!ということでいろいろと調べてみたら、やっぱりできることがわかりました。

 まず、表示させたいディレクトリに「.htaccess」ファイルを作成します。そのファイルの中に下記ルールで明記します。

AddDescription “(ファイルやディレクトリの説明)” (ファイルやディレクトリ名)

たったこれだけです。例えばファイルの説明を各場合は

AddDescription “PHP Information” phpinfo.php

となります。ディレクトリの場合は

AddDescription “phpMyAdmin Dir” phpMyAdmin

です。ただ、説明に日本語を使うとほとんどの場合が文字化けします。そうした場合は.htaccessに

IndexOptions Charset=UTF-8

と書いて、.htaccessをUTF-8の形式で保存します。これだけで下記のように日本語で説明を表示することができます。

ApacheのIndex ofでファイルやディレクトリに日本語も含めた説明を表示した例

ApacheのIndex ofでファイルやディレクトリに日本語も含めた説明を表示した例

 また、説明文はデフォルトで23バイトまでです。これを長くしたい場合はIndexOptionsに「DescriptionWidth=n」を加えます。この中の「n」はバイト数で100などの数字を入れれば、説明文は長く表示できます。上記の文字コードと合わせると下記のようになります。Apacheのバージョンが2.0.23以前の場合は「DescriptionWidth」ではなく「NameWidth」なのかな?(未確認)

IndexOptions Charset=UTF-8 DescriptionWidth=100

 Apacheでこのようなことができるんですね。全然知りませんでした(^^ゞもっともっと勉強せねば。

Apacheポケットリファレンス (POCKET REFERENCE)

価格¥777

順位410,861位

WINGS プロジェクト 高江 賢

監修山田 祥寛, 山田 祥寛

発行技術評論社

発売日2010/04/10

Amazonを開く

Supported by amazon Product Advertising API