String 通过.HTACCESS传递查询字符串
我需要通过.htaccess重定向传递一个动态查询字符串。例如: 我需要重定向此URL: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…”,包括查询字符串(使
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