12
私はhtaccess内でRewriteEngine Onを1回だけ使用できるかどうかは、IfModule mod_rewrite.cに埋め込まれているか、毎回を使用しなければならないのですか?が埋め込まれていますか?毎回<IfModule mod_rewrite.c>でRewriteEngineをオンにしますか?
以下の例を参照してください。ありがとう
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{QUERY_STRING} /?author [NC]
RewriteRule .* - [F]
</ifModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} g= [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
また、複数の 'RewriteBase'ディレクティブを避けるべきです。エラーは発生しませんが、1つの.htaccessファイルに複数のエラーが存在することは無効です。最後のものが.htaccessファイル全体を勝ち、コントロールします。このファイルでは、とにかく不要です。AFAIKこれは 'RewriteRule'ディレクティブに相対パス置換がある場合にのみ必要です。 – MrWhite