0

私の URL は ですhttp://www.example.com/eg1?redirect=xyzhttp://www.example.com/eg1

このために書かれた書き換え規則は次のとおりです。

RewriteCond %{Query_STRING} ^redirect=xyz$
RewriteRule ^(.*)$ /examples/$1? [L]

リダイレクトは正常に機能していますが、クエリ文字列が追加されたままです。フラグを立てると、最後に[R]疑問符 ( ?) がうまく機能し、クエリ文字列が削除されますが、[L]フラグを使用すると機能しません。私の場合、リダイレクトはなく、コンテンツを保持する別のディレクトリに渡すだけです。

4

1 に答える 1

2

ルールは問題ありません:

RewriteCond %{Query_STRING} ^redirect=xyz$
RewriteRule ^(.*)$ /examples/$1? [L]

アドレスバーに反映させたい場合は、外部リダイレクトを指定する必要があります。すなわち( ) または( )Rを使用します。とともに。デフォルトでは、一時的なリダイレクトを行います。Temporary RedirectR=302Permanent RedirectR=301LR

RewriteRule ^(.*)$ /examples/$1? [R,L]

コメントから:

Lflsg とともに追加しますR

RewriteRule ^(.*)$ $1? [R,L] 
于 2012-02-21T12:24:11.223 に答える