0

オランダのWeb サイトで、いくつかの古い URL を新しいパスにリダイレクトしたいと考えています。

次のような URL をリダイレクトしたい:

/playlist?artist=Bob+Marley    ->    /zoeken/Bob+Marley
/playlist?artist=Rammstein     ->    /zoeken/Rammstein

私はこれまでに思いついた:

RewriteCond %{QUERY_STRING}  ^artist=(.*)$  [NC]
RewriteRule ^playlist        /zoeken/%1     [NC,L,R=301]

現在の唯一の問題は、リダイレクト後にクエリ文字列が表示され続けることです。

http://watiseropderadio/zoeken/Bob+Marley?artist=Bob+Marley

このクエリ文字列を削除するにはどうすればよいですか?

4

1 に答える 1

2

最後にa が必要です?:

RewriteCond %{QUERY_STRING}  ^artist=(.*)$  [NC]
RewriteRule ^playlist        /zoeken/%1?     [NC,L,R=301]
# here --------------------------------^

デフォルトでは、?独自のクエリ文字列を作成する必要がない限り、クエリ文字列はルールのターゲットに自動的に追加されます。最後にa だけを使用すると、空のクエリ文字列が作成され、既存のクエリ文字列はフラグ?なしでは追加されません。QSA

于 2012-12-25T13:54:51.040 に答える