.htaccess 使用复杂查询重定向查询字符串

.htaccess 使用复杂查询重定向查询字符串,.htaccess,redirect,.htaccess,Redirect,我正在将“附加”CRM从一个CMS移动到另一个CMS。这个CRM上有相当多的个人页面,我正在尝试设置重定向,以便旧的URL重定向到新的CMS站点 我尝试了几种不同的查询字符串重写,但没有成功。我想这是因为我的查询很复杂,需要一些帮助 旧URL: mysite.org/subdira/index.php/component/civicrm/?task=civicrm/pcp/info&reset=1&id=20 新网址: mysite.org/subdirb/?page=CiviCRM&q=Civ

我正在将“附加”CRM从一个CMS移动到另一个CMS。这个CRM上有相当多的个人页面,我正在尝试设置重定向,以便旧的URL重定向到新的CMS站点

我尝试了几种不同的查询字符串重写,但没有成功。我想这是因为我的查询很复杂,需要一些帮助

旧URL: 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]

无效,ideas???

将此规则放置在根目录中。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]

没有骰子使用此重定向。您在测试中使用了什么完整的URL?这个.htaccess的位置是什么?还有
/subdra/.htaccess
吗?我使用了以下命令:RewriteCond%{QUERY_STRING}^task=civicrm/pcp/info&reset=1&id=[0-9]+$RewriteRule^subdra/index\.php/component/civicrm/?$/subdirb/?page=civicrm[R=302,L,QSA,NC]该.htaccess文件位于最上面的目录中。是的,subdira中有一个.htacess文件-它是一个Joomla安装,所以我假设它是Joomla安装附带的常见写入。我在重写规则中遗漏了什么吗?“/subdirb/?page=CiviCRM”之后是否还有其他内容?(这是wordpress安装)。不要在注释中发布代码。编辑您的问题并在此处提供。