.htaccess从URL中删除.php并添加尾部斜杠

时间:2017-06-07 14:07:55

标签: php apache .htaccess mod-rewrite

我有一个PHP文件和文件夹的文件系统,并希望使URL更好,但似乎找不到合适的组合。这可以使admin.php只作为管理员工作,但是如果有人点击PHP URL,我找不到添加尾部斜杠并将其重定向到漂亮URL的好方法。

#Remove .php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [L]

通缉:

domain/admin.php => domain/admin/
domain/admin     => domain/admin/

Virtual和Real子文件夹呢?

 domain/folder/   => loads index.php if exists otherwise loads folder.php in root

如果有人有任何提示,我会很感激!

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用站点根目录中的这2个重写规则来解决所有3个任务.htaccess:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=301]

RewriteCond %{DOCUMENT_ROOT}/$1/index.php !-f
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^(.+?)/?$ $1.php [L]