htaccess rewriterule精确(精确)匹配

时间:2016-08-31 00:50:23

标签: .htaccess redirect mod-rewrite joomla

我有一个网站,我想重定向该网页: 的 website.com/component/users/profile 至 的 website.com/redirect

但是,我想允许导航到:

website.com/component/users/profile?layout=edit

“?”似乎导致了一个问题。我找到了许多相反的解决方案(从带有“?”的链接到没有“?”的页面)。

我现在拥有的东西允许我导航到: 的 website.com/component/users/profile

但不是

website.com/component/users/profile?layout=edit (这是重定向的那个)

我正试图达到完全相反的目的。

我的htaccess文件中的代码是:

RewriteCond %{QUERY_STRING} ^component/users/profile$
RewriteRule ^$ /redirect [L,R=301]

谢谢!

1 个答案:

答案 0 :(得分:0)

您无法与重定向中的查询字符串匹配,您需要使用%{QUERY_STRING} 变量和mod_rewrite。在文档根目录中的htaccess文件中可能已有的任何其他规则之上,添加:

RewriteEngine On
RewriteCond %{QUERY_STRING} (^|&)view=login(&|$)
RewriteRule ^component/users/$ http://www.example.com/? [L,R]