Apache 使用mod_rewrite清理URL-当目录存在时?

Apache 使用mod_rewrite清理URL-当目录存在时?,apache,mod-rewrite,Apache,Mod Rewrite,我发现这段代码可以获得干净的URL,例如,将domain.com/start/重写为domain.com/start.php 除非有同名的目录,否则这种方法可以正常工作。我不知道我能做些什么。我希望Apache仍然重写URL,即使存在同名目录(只要文件存在) 添加另一个RewriteCond以包括目录 RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.+)/$ $1.php [L] RewriteCond %{REQUEST_FILEN

我发现这段代码可以获得干净的URL,例如,将domain.com/start/重写为domain.com/start.php

除非有同名的目录,否则这种方法可以正常工作。我不知道我能做些什么。我希望Apache仍然重写URL,即使存在同名目录(只要文件存在)


添加另一个
RewriteCond
以包括目录

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+)/$ $1.php [L]

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

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