Apacheの.htaccessは極力使用しないこと

.htaccessとは

ただし、性能劣化、セキュリティ低下の観点より、.htaccessファイルの使用は極力避けるべきということが、本家サイトにも書かれています。

一般的に、サーバの主設定ファイルにアクセスできない場合を除いて、.htaccess ファイルの使用は極力避けてください。

Apache HTTP Server Tutorial: .htaccess files - Apache HTTP Server Version 2.2

性能劣化について

.htaccessを許可している場合、Apacheはリクエスト時に、該当する全ディレクトリに.htaccessを探します。
例えば、/www/htdocs/example にあるファイルがリクエストされた場合、以下のようなディレクトリを順次調べます。

  1. /.htaccess
  2. /www/.htaccess
  3. /www/htdocs/.htaccess
  4. /www/htdocs/example/.htaccess

これは、リクエストの度に行われる(ファイルが探され、読み込まれる)ため、Apacheにとって負担となります。特に大量のアクセスを捌く必要があるサーバでは、バカにならない負担になるかもしれません。

セキュリティ低下について

ユーザにサーバの設定を変更することを 許可することになりますので、あなた自身が管理できない変更をされる 恐れがあります。ユーザにこの特権を与えるのが良いのかどうか、十分 検討してください。この意味でも、よほどの必要性がない限りは使用すべきではありません。

.htaccessを使用しないよう設定

.htaccessを不要なディレクトリについては、必ず「AllowOverride None」としてファイルを探しに行かないようにします。


    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all