查询字符串重定向与复杂查询

时间:2014-07-10 16:27:00

标签: .htaccess redirect

我正在移动一个附加组件' CRM从一个CMS到另一个。此CRM上有相当数量的个人页面,我尝试设置重定向,以便旧URL重定向到新的CMS站点。

我尝试了一些查询字符串重写的不同变体但没有成功。我认为这是由于我的查询的复杂性,可以使用一些帮助。

旧网址: mysite.org/subdira/index.php/component/civicrm/?task=civicrm/pcp/info&reset=1&id=20

新网址: mysite.org/subdirb/?page=CiviCRM&q=civicrm/pcp/info&reset=1&id=20

我现在的代码:

RewriteEngine On
RewriteCond %{REQUEST_URI}  ^/subdira/index\.php/component/civicrm/$ 
RewriteCond %{QUERY_STRING} ^task=civicrm/pcp/info&reset=1&id=([0-9]*)$ 
RewriteRule ^(.*)$ https://www.mysite.org/subdirb/?page=CiviCRM&q=civicrm/pcp/info&reset=1&id=%1 [R=302,L]

不工作,想法??

1 个答案:

答案 0 :(得分:0)

将此规则放在root .htaccess中:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^task=civicrm/pcp/info&reset=1&id=[0-9]+$ 
RewriteRule ^subdira/index\.php/component/civicrm/?$ /subdirb/?page=CiviCRM [R=302,L,QSA,NC]