0

ユーザーが入力した場合

www.example.com/Front

また

www.example.com/Front.php

にリダイレクトしたい

www.example.com

これが私のhtaccessです:

RewriteEngine on

DirectoryIndex Front.php

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+)/([^\.]+)\.php\ HTTP/
RewriteRule ^([a-zA-Z0-9_-]+)/([^.]+)\.php$ http://www.example.com/$1/$2 [R=301,L]

しかし、何らかの理由でwww.example.com/Front.php、ページを入力してもURLが変わらず、/Front.php. 適切にリダイレクトするには、何を追加/変更する必要がありますか? ありがとう

4

1 に答える 1

0

RewriteRule が URL と一致しません。したがって、ここで書き換えても何も起こりません。

あなたの URL はFront.php(.htaccess ファイル内にあるため、先頭にスラッシュはありません) です。正規表現は^([a-zA-Z0-9_-]+)/([^.]+)\.php$-他のものとは別に、URLにスラッシュがないため、これは一致しません。

RewriteRule で正規表現をトリガーしないと、先行するすべての RewriteCond を含む完全なルールが無視されます。

.htacces にこれ以上ルールがない場合は、これで終わりです。

何が起こっているのかを確認するには、RewriteLog を有効にする必要があります。

于 2012-10-08T22:10:25.417 に答える