Archive for 8月, 2009

8月 30th, 2009

Directory, Files, Locationの優先順

Posted in Apache by admin

Apacheぜ ACLを設? する場合、<Directory>, <Files>, <Location> ディレクティブを使用しますが、これらのディレクティブが複数設定されている場合の優先順位はどのように? 義されているのでしょうか?Apacheのドキュメントでは以下のように解説されています。

1. <VirtualHost>外<Directory> (正? 表現無し) ぜ .htaccess を同時に蜩 ?
.htaccess が許可されていれば、それが <Directory> を上書き
<Directory> 同士はディレクトリが短いものから長いものへと処理される
2. <VirtualHost>内<Directory>
3. <VirtualHost>外<DirectoryMatch> (ぜ <Directory ~> (正? 表現あり)
4. <VirtualHost>外<Files><FilesMatch> を同時に蜩 ?
<Files>同士は設定出現順に処理される
5. <VirtualHost>外<Location><LocationMatch> を同時に蜩 ?
<Location> 同士は設定出現順に処理される

1~5の順で蜩 価されます。つまり1の設定ぜ 5の設定で? 書きされる場合があります。Apacheのドキュメントにも謳゜ れているように、? 図しない設? の? 書きを防止する為にも「どう使い分けるか?」のルールを設けておぜ べきです。ファイルシステムに対するACLを適? する場合は、必ず <Directory> か <Files> を使用します。ファイルシステムに? 存しない(Tomcatぜ servlet-mappingなど? 場合にのぜ <Location>を使用するようにします。

場合によっては、これらのセクションを複数混同させる選択肢よりも、<Location>なら<Location>だけに? って設定したほうが要件が昜 確になる事もあります。アプリケーション側ぜ URL設? がはっきりしていればこの方? でも悪ぜ ないと思います。

http://httpd.apache.org/docs/2.2/ja/sections.html