删除文件夹的.php扩展名 - htaccess

时间:2013-11-04 21:57:15

标签: .htaccess mod-rewrite

目前我在网址中删除了.php扩展名。

我用:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^([^/]+)/$ $1.php

# Forces a trailing slash to be added
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]

问题是如果我有一个文件夹它不起作用。我必须将它添加到每个文件夹组。我知道有一种更简单的方法。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

您只需要更改正则表达式,这样就不会排除中包含/的请求。

将您的第一条规则更改为:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.+)/$ $1.php