htaccess重写规则删除子目录和.php扩展名

htaccess重写规则删除子目录和.php扩展名,php,apache,.htaccess,Php,Apache,.htaccess,我需要重写web的url并使其隐藏子文件夹和.php扩展名,如下所示: 原件: 目标: 我目前的规则不起作用 Options -Indexes RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.*)$ controller/$1.php [L] 如何做到这一点?谢谢您需要2个.htaccess文件 站点root.htaccess

我需要重写web的url并使其隐藏子文件夹和.php扩展名,如下所示:

原件:

目标:

我目前的规则不起作用

Options -Indexes
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f

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

如何做到这一点?谢谢

您需要2个
.htaccess
文件

站点root.htaccess:

重新编写引擎打开
#将所有内容转发到控制器/如果不是文件或目录
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则。*控制器/$0[L]
controller/.htaccess

RewriteEngine On

# add .php extension internally
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ $1.php [L]

感谢您的回答,但它不工作,每当我试图访问它总是对象未找到,而且它使我无法访问我的项目文件夹内的图像文件夹,我需要能够访问确定,请尝试我在网站根更新的代码。htaccess是的,它现在工作,谢谢