如何根据查询字符串值是否存在重定向请求?

时间:2010-08-18 16:56:01

标签: .htaccess mod-rewrite

我搜索并尝试了很多例子,但似乎没有一个适合我。我需要将请求重定向到特定的URL,具体取决于原始请求是否在其查询字符串中有某个项目。

e.g。

www.mydomain.com/test.html?username=foo&password=bar

所以我想重定向这只是查询字符串中存在的用户名变量

www.mydomain.com/home.html?username=foo&password=bar

但是,该页面可以是任何页面,.e.g test.html,home.html,contact.php

因此,如果在查询字符串中检测到用户名变量,则只会发生重定向。

感谢您的帮助。

我尝试了这个,但它不起作用:

RewriteRule ^username(.*)$ test.html?username=$1 [L,QSA]

1 个答案:

答案 0 :(得分:0)

您可以使用QUERY_STRING来完成此任务。

RewriteCond %{QUERY_STRING} username
RewriteCond %{REQUEST_URI} !^/home.html
RewriteRule .* /home.html/ [L,QSA]