サーバを移転するということで、以下のようなリダイレクトを書きました。
RedirectMatch /contents/([0-9]*)\.html http://www.newsite.com/path/?p=$1
今まで 001234.html としてアクセスしていたコンテンツに ?p=001234 としてアクセスしたかったのですが、
http://www.newsite.com/path/%3fp=001234
と、? マークが余計にエンコードされてしまいました。調べたところ、RewriteRule を使うと良さそうだということで、以下のようにしました。
RewriteEngine On
RewriteEngine on
RewriteRule contents/([0-9]*)\.html$ http://www.newsite.com/?p=$1 [R=301,L]
これでうまくいった感じ。
RedirectMatch では ? や % を含むURLはうまくリダイレクトできないようです。
0件のコメント