当我打开这样的url时,这个.htaccess文件会重写为/admin/index.php: http://example.com/admin/
但在http://example.com/admin/accounts/上重写了对/index.php(第一条规则)的请求。
我的配置文件有什么问题?
AddDefaultCharset utf-8
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
RewriteRule ^admin/(.*)$ admin/index.php [QSA,L]
RewriteRule ^api/(.*)$ api.php [QSA,L]
答案 0 :(得分:0)
您的最后两条规则被忽略,因为第一条规则取代了它们,方法是匹配所有(.*)
。
因此,最后两条规则应该移到RewriteEngine on
之下。