Mod_rewrite:重定向时包含查询字符串

时间:2011-01-29 10:32:31

标签: apache mod-rewrite

我对mod_rewrite有一个小问题。这是我的代码:

RewriteEngine on 
RewriteRule ^(.*)$ http://newsite.com/moved.php?q=$1 [R=301,L]

这几乎有效,如果我去oldsite.com/apage.php,我会被重定向到newsite.com/moved.php?q=apage.php。
但是,如果我转到oldsite.com/apage.php?var=15,我会再次被重定向到newsite.com/moved.php?q=apage.php。
我怎样才能将oldsite.com/apage.php?var=15重定向到newsite.com/moved.php?q=apage.php?var=15 非常感谢!

1 个答案:

答案 0 :(得分:7)

使用QSA flag将原始请求的查询自动附加到新的查询:

RewriteRule ^(.*)$ http://newsite.com/moved.php?q=$1 [R=301,L,QSA]