0

.htaccess ファイルでこれを使用して内部サーバー エラーが発生する理由を理解しようとしています。

<IfModule mod_rewrite.c>
  RewriteEngine on 
  RewriteCond %{REQUEST_FILENAME} !-d 
  RewriteCond %{REQUEST_FILENAME}\.php -f 
  RewriteRule ^(.*?)(/)?$ $1.php
  Options +FollowSymlinks
</IfModule>

/about/ や /work/ などの URI を about.php や work.php に誘導しようとしています。

500 エラーが発生した場合の例を次に示します。

example.com/about/probablydoesntexist にアクセスします

書き換えログを見たところ、次のように試行し続けていることがわかります。

about/probablydoesntexist.php about/probablydoesntexist.php.php about/probablydoesntexist.php.php.php など。

存在しないphpファイルのRewriteCondを満たしていないのはなぜですか?

再帰を防ぐにはどうすればよいですか?

4

0 に答える 0