我想将没有扩展程序的所有网址(www.mydomain.com/test)重定向到我的主页,不包括以斜杠结尾的网址(www.mydomain.com/test/)。
以下代码效果很好......
RewriteEngine on
RewriteBase /
RewriteRule ^([^.]+)$ http://www.mydomain.com [NC,R=301,L]
...但它也会重定向以斜杠结尾的网址。
如何才能实现末尾斜杠的网址不被重定向?
由于
答案 0 :(得分:1)
我相信这会做你所要求的,你只需要将你的匹配限制在不以尾部斜杠结尾的页面上:
RewriteRule ^(.+[^/])$ http://www.mydomain.com [R]
然而,从逻辑的角度来看,这听起来像是一个真正糟糕的主意。但我想这不是我告诉你的地方,所以我认为你有充分的理由这样做。祝你好运!
答案 1 :(得分:0)
尝试将以下内容添加到.htaccess
RewriteEngine On
RewriteBase /
#If it does not end in an extension (of 2 to 4 chars)
RewriteCond %{REQUEST_URI} !\.[a-z]{2,4}$ [NC]
#and it does not end in a slash
RewriteCond %{REQUEST_URI} ![^/]$
#redirect to home page
RewriteRule . http://www.mydomain.com [L,R=301]