Ubuntu 11.10 で Apache 2 の .htaccess を有効にする方法

Ubuntu 11.10 で Apache 2 の .htaccess を有効にする方法

ラップトップを Ubuntu 10.04 から Ubuntu 11.10 にアップグレードしました。URL の書き換えがa2enmod rewriteまったく機能していないため、Apache Web サーバーが .htaccess ファイルを認識していないようです。 を試しましたが、Apache によると、すでに有効になっています。Apache サーバーを再起動しましたが、書き換えはまだ機能しません。 500 Internal Server エラーなどのエラーを発生させることを期待して、.htaccess ファイルに意味不明なテキストを入力しようとしましたが、エラーは発生しませんでした。Apache が .htaccess ファイルを読み取っていないかのようです。apache2.conf ファイルには、 という行がありますAccessFileName .htaccess

.htaccess ファイル内の RewriteRules を再び機能させるにはどうすればよいですか?

答え1

.htaccessファイルが本当に解析されない場合は、AllowOverrideメイン設定にディレクティブが必要です。

AllowOverride FileInfo

(これにより、mod_rewrite ディレクティブが許可されます。Allディレクティブを許可する必要がある場合に使用します)

ところで、なぜ使うの.htaccessでしょうか?ドキュメント:

一般に、メイン サーバー構成ファイルへのアクセス権がない限り、.htaccess ファイルは使用しないでください。

答え2

.htaccess でどのような種類のエントリが受け入れられるかを制御する AllowOverride ディレクティブを確認してください。これは、ディレクトリ コンテキストで設定されます。

http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride

関連情報