0

あるコンテンツ管理システムから別のシステムにデータを移行しています。古い URL と新しい URL には関係がありませんが、どちらにもクエリ文字列が含まれています。データの広範なカテゴリリストをあるカテゴリから別のカテゴリにリダイレクトする一連の書き換えをセットアップしようとしています。

サンプルは次のとおりです。

古い rss.php?categoryID=53

新しい index.php?module=news&type=user&func=list&tid=1&filter=blogtopic:eq:19

私は試した

RewriteRule ^rss.php\?categoryID=53 index.php?module=news&type=user&func=list&tid=1&filter=blogtopic:eq:19 [L]

しかし、一致しません。私がそれをフォローすると

RewriteRule ^rss.php index.php?module=news&type=user&func=list&tid=1 [L]

DOES が一致する場合、古い URL の疑問符が問題の原因であると結論付けます。私はすでに疑問符をエスケープしています。私は何をしますか?

おそらく .htaccess ファイルに約 50 個のファイルが含まれることになるでしょう。

4

1 に答える 1

0

aのクエリ文字列 ( ?の後のすべてのもの) と照合することはできません。 aを使用して `%{QUERY_STRING} 変数と照合RewriteRuleする必要があります。RewriteCond

RewriteCond %{QUERY_STRING} ^categoryID=53$
RewriteRule ^rss\.php$ /index.php?module=news&type=user&func=list&tid=1&filter=blogtopic:eq:19 [L]

[R=301,L]または、ブラウザをリダイレクトする場合は、ブラケットを に変更します。

于 2012-07-27T17:35:49.450 に答える