我需要将请求 301 重定向到没有扩展名的文件,以与附加的 .html 扩展名相同:
http://www.mydomain.com/this
到
http://www.mydomain.com/this.html
以下内容不会被重定向:
http://www.mydomain.com/that/ (it's a directory)
http://www.mydomain.com/other.php
对上述任何帮助表示赞赏,谢谢。
最佳答案
请尝试以下操作。我会将它作为您的集合中的最后一条规则(即底部),以免与任何其他规则发生冲突。
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !\..+$
RewriteRule ^(.*)$ /$1.html [R=301,L]
这应该确保请求不是目录,并且不会以某种扩展名结束。如果满足这些条件,它将在请求后附加
.html
.这是未经测试的,所以如果它有效,请评论。 ;)
关于.htaccess - 301 将所有没有扩展名的文件重定向到 .html 扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4337548/