2012-12-09 98 views
1

使用的.htaccess文件,我想重定向的URL是这样的:重定向URL与参数相同的URL不带参数

http://www.mysite.com/a-page/?fp=123&sp=456&tp=789 

到:

http://www.mysite.com/a-page/ 

所以基本上重定向URL不关心将参数值传递给没有任何参数的相同url。

我已经使用了RewriteCond/RewriteRule,Redirect和RedirectMatch,但没有任何运气。

我最新的尝试是:

RewriteCond %{QUERY_STRING} ^.+$ 
RewriteRule ^a-page/$ http://www.mysite.com/a-page/? [L,R=301] 

什么建议吗?

+0

[你可能想摆脱的第一件事情(http://www.regular-expressions.info/catastrophic.html)是'(*。 )+'。如果你想要求至少一个字符,就用'。+'来表示。 –

+0

是的,谢谢,重新编辑 – Randomize

+0

在目录上下文(.htaccess或)中,RewriteRule的路径从不以斜杠开始。 – julp

回答

0

好吧,我已经找到了解决办法:

RewriteCond %{QUERY_STRING} . [NC] 
RewriteCond %{REQUEST_URI} /a-page/ 
RewriteRule^a-page/? [L,R=301]