「Directory」, 「Location」 が.htaccessでは使えない

2021-06-28

htaccessで使用可能なディレクティブについて

Apacheで「test」ディレクトリだけBASIC認証したいって要望があり、その際に「.htaccess」で記述したい事なので、「.htaccess」に<Directory>ディレクティブに設定すると何度やってもInternal Server Errorになります。

Apacheの設定ファイル(httpd.conf)で同じ設定すると、問題なく動きます。構文ミスなのかと設定するディレクティブを<Location>にしても同じくエラーになります。

Apacheのエラーログには以下のようになっています。

[client xxx.xxx.xxx.xxx] /var/www/html/test/.htaccess: <Directory not allowed here
[client xxx.xxx.xxx.xxx] /var/www/html/test/.htaccess: <Location not allowed here

1〜2時間ほど、悩んで色々調べているうちに、<Directory>, <Location> が.htaccessでは使えないて結論に達しました。

Apache チュートリアル: .htaccess ファイル」の関連ディレクティブには、<Directory>, <Location>の記述ないので、<Directory>, <Location> が.htaccessでは使えないでしょうね。

LinuxCentOS 5,CentOS 6

Posted by admin