即使其他规则有效,.htaccess也无法正常工作

时间:2013-10-03 10:54:32

标签: .htaccess

我正在尝试重定向到另一个网站。以下规则适用于我.htacces中的所有其他规则,但以下规则似乎不起作用,我可以通过大量尝试和错误找出原因。

RewriteCond %{HTTP_HOST} ^www.oldexample.com$ 
RewriteRule ^folder3/page.php?value=(.*)$ http://newexample.com/folder1/page.php?value=$1 [L,R=301,NC]

我尝试了以下重定向但未添加(.*)内的值的

RewriteCond %{HTTP_HOST} ^www.oldexample.com$ 
RewriteRule ^folder3/page.php?(.*)$ http://newexample.com/folder1/page.php?$1 [L,R=301,NC]

这可能是= symbbol的问题吗?我试图逃避它并逃避.但也无济于事

1 个答案:

答案 0 :(得分:0)

您无法在重写规则中与查询字符串(之后的所有内容)匹配,您需要使用RewriteCond并与%{QUERY_STRING}匹配。但是,看起来你只是试图传递查询字符串,不变。所以你不需要弄乱任何一个:

RewriteCond %{HTTP_HOST} ^www.oldexample.com$ 
RewriteRule ^folder3/page.php$ http://newexample.com/folder1/page.php [L,R=301,NC]

查询字符串将自动附加。您需要确保此规则高于任何路由规则,因为它需要在任何内部重写之前进行。