从网址中删除文件扩展名

时间:2010-10-06 03:03:40

标签: apache mod-rewrite url-rewriting

我从未使用过mod_rewrite但我想从网址的网址中删除所有文件扩展名。我需要做什么规则?

我试过这个,但每次点击我网站上的链接时,这都会给我一个内部错误

RewriteRule ^(.*)$ $1.php [L]

2 个答案:

答案 0 :(得分:5)

Options +MultiViews可能是更好的选择。启用该选项后,Apache将智能地重写扩展名。

答案 1 :(得分:1)

您要做的是首先检查文件是否存在,这样可以防止导致500错误的无限循环。它还会使其他非php文件请求起作用(即:images,css等)。

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]