2017-05-19 162 views

回答

1

你的规则是容易引起重定向循环,因为它会重写URL,即使它已经被重定向了。

在您的模式中,您需要确保URL不会以.html结尾。

你可以用一个否定模式来实现这一目标:

RewriteRule !\.html$ %{REQUEST_URI}.html [L,R=301] 

另外,如果你不想将此空路径(比如在你的例子),或需要重用你的模式的匹配,你可以使用一个RewriteCondition

RewriteCond %{REQUEST_URI} !\.html$ 
RewriteRule (.+)$ $1.html [L,R=301] 

注意,这是一个非常简单的例子,其仅适用于您所描述的确切情况。这也将重写以.htm.htm.html结尾的网址,这可能是也可能不是您想要的。