htaccess重定向与参数变化

时间:2017-05-12 01:39:33

标签: .htaccess redirect mod-rewrite

我正在尝试重定向具有不同参数名称的页面具有相同的值,如下所示:

原文:example.com/trip/trip.php?refID=ZMkZ4rC

新页面:example.com/corp/trip/trip.php?id=ZMkZ4rC

区别在于我正在添加/corp/,参数正在更改为id=

使用下面我得到一个重定向,但没有传递任何参数。

RewriteCond %{QUERY_STRING} (^|&)refID\=(.*)($|&)
RewriteRule ^trip/trip\.php$ /corp/trip/trip.php?id=$1 [L,R=301]

结果:example.com/corp/trip/trip.php?id=

我错过了什么?

1 个答案:

答案 0 :(得分:0)

请尝试使用以下内容,因为您可以看到我为uri和query_string使用了单独的重写。

RewriteCond %{REQUEST_URI} ^/trip/trip.php
RewriteCond %{QUERY_STRING} ^refID=(.+)
RewriteRule ^ /corp%{REQUEST_URI}?id=%1 [R=301]