String 通过.HTACCESS传递查询字符串

String 通过.HTACCESS传递查询字符串,string,.htaccess,redirect,String,.htaccess,Redirect,我需要通过.htaccess重定向传递一个动态查询字符串。例如: 我需要重定向此URL:http://mysite.com/page1?action=signup&var2=dynamicVar 对此:http://mysite.com?action=signup&var2=dynamicVar 我知道这很简单,但我真的不确定哪种类型的规则/语法适用于此 非常感谢您的帮助 使用%{REQUEST_URI} fi.: 将以“网站”开头的任何内容重写为“www.website…”,包括查询字符串(使

我需要通过.htaccess重定向传递一个动态查询字符串。例如:

我需要重定向此URL:
http://mysite.com/page1?action=signup&var2=dynamicVar

对此:
http://mysite.com?action=signup&var2=dynamicVar

我知道这很简单,但我真的不确定哪种类型的规则/语法适用于此

非常感谢您的帮助

使用%{REQUEST_URI} fi.:


将以“网站”开头的任何内容重写为“www.website…”,包括查询字符串(使用%{REQUEST_URI})

如果您已经拥有.htaccess,则只需添加以下行:

RewriteRule ^page1/?$ page2 [L,R,QSA,NC]
更新:根据您的评论:

RewriteCond %{QUERY_STRING} (^|&)action=signup(&|$) [NC]
RewriteRule ^page1/?$ / [L,R,QSA,NC]
输入

这是重写规则

RewriteRule ^page1?(.*)$ /?$1 [L,R=301]
重定向到

http://mysite.com/?action=signup&var2=dynamicVar 

这将把带有get参数的所有请求重定向到page1,这看起来正是我要做的。但是,我的问题说错了。我真的需要将此重定向到以下位置:。你知道怎么做吗?谢谢你的快速回复,不过我还是不太清楚(对不起!)。我已经在上面修改了我原来的帖子。重要的是,如果查询字符串的第一部分与“action=signup”匹配,我只需要重定向。啊,不断变化的要求:)无论如何,我再次编辑了,现在检查一下。再次感谢!不幸的是,这似乎没有起到任何作用。我确保根据我的示例URL将“page1”更改为“login”。你知道为什么它不起作用吗?我感谢你的慷慨帮助!再想一想,我认为唯一的一件事会导致这不起作用,那就是我的URL在目录和查询字符串的开头之间有一个“/”。这可能是原因吗?
http://mysite.com/page1?action=signup&var2=dynamicVar
RewriteRule ^page1?(.*)$ /?$1 [L,R=301]
http://mysite.com/?action=signup&var2=dynamicVar