使用.htaccess删除文件扩展名:尾部斜杠出错

时间:2012-06-14 15:53:46

标签: html .htaccess file-extension

我想使用.htaccess从我的网站中删除.html等文件扩展名。最终的结构应该是这样的:

http://domain.com/file  --> http://domain.com/file.html
http://domain.com/file/ --> http://domain.com/file.html

使用.htaccess中的现有代码,当我的浏览器在末尾有一个尾部斜杠时,我会得到“内部服务器错误”。我能做什么?谢谢!

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html

2 个答案:

答案 0 :(得分:2)

RewriteEngine On
RewriteBase /
RewriteRule ^([a-zA-Z0-9-_]+)/?$ $1.html [L]

答案 1 :(得分:0)

我建议你改变你的RewriteCond:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule  ^(.*)(\.html){0}$ /$1.html [L] 
编辑:编辑规则,我忘了无限循环。