現在、自分のWebサイトの/sub/フォルダーにある.htaccessファイルで2つの書き換えルールを使用しようとしています。1つは、URLの最後にあるindex.php、index.htmlなどを削除するためのリダイレクトです(例:/sub/index.php-> / sub /:)。
RewriteCond %{REQUEST_URI} ^(.*)/index\.[^\.]+$
RewriteRule index.* %1/ [r=301,L]
もう1つは、phpのURLを書き直して、クエリ文字列を取得することです。例:/ sub / tests-testing-> /sub/index.php?field=testing-testing:
RewriteRule ^(.*)$ index.php?command_name=$1 [L,QSA]
これらはそれ自体で問題なく動作するように見えますが、私はそれらを一緒に動作させる方法を理解できません。
最初のルールは「index(...)」と一致しているため、2番目のルールでどのように問題が発生するかがわかります。そのため、これらのさまざまなバリエーションを試しましたが、エンドレスリダイレクトループまたはリダイレクトバックのいずれかが発生し続けます。ウェブサイトのルートに。