我想使用htaccess重定向顶级页面,但不重定向层页面。让我解释一下。我目前有这样的重定向到位:
Redirect 301 /support /donate
总之,我希望有人访问/support
时被重定向到/donate
。但是,如果有人访问此规则:
https://www.example.com/support/test
它们被重定向到:
https://www.example.com/donate/test
我不希望他们在这些情况下被重定向-只有当他们访问/support
或/support/
(注意尾随斜线)。
我不知道该怎么做或者是否可行。有什么想法吗?
1条答案
按热度按时间ttp71kqs1#
Redirect
指令是前缀匹配的,因此您需要使用RedirectMatch
指令,它与正则表达式匹配。例如:
上面的命令只匹配
/support
或/support/
,并且在两种情况下都重定向到/donate
。注意,根据初始请求中是否有尾部斜杠,前面的Redirect
指令将重定向到/donate
或/donate/
。在测试之前,您需要清除浏览器缓存,因为任何错误的301(永久)重定向都将被浏览器永久缓存。首先测试302重定向,以避免潜在的缓存问题。
参考: