Php .htaccess在同一目录中多次重写

Php .htaccess在同一目录中多次重写,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我有这个: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ $1.php [QSA] 删除“.php”扩展,效果很好。我一直在玩弄添加另一个规则,但是它被忽略了。我需要第二条规则来说明: php/“variable”,然后用example.php?page=variable对其进行细分 用户看到的URL: example.com

我有这个:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [QSA]
删除“.php”扩展,效果很好。我一直在玩弄添加另一个规则,但是它被忽略了。我需要第二条规则来说明:

php/“variable”,然后用example.php?page=variable对其进行细分

用户看到的URL:

example.com/folder/example/variable

实际页面是example.com/folder/example?page=变量


我对重写引擎有基本的了解,但我不是专家。谢谢

您需要在php规则中添加另一个条件,该条件检查重写目标是否确实存在。之后,您想要的几乎是相同的东西,但您检查路径信息:

RewriteEngine On

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

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/(.*)/([^/]+)$
RewriteCond %{DOCUMENT_ROOT}/%1.php -f
RewriteRule ^(.*)/([^/]+)$ /$1.php?page=$2 [L,QSA]

我还是有500个错误。我需要更改什么吗?@user2861406查看对第一条规则第三个条件的编辑