.htaccess重定向。将一条规则置于另一条规则之上

.htaccess重定向。将一条规则置于另一条规则之上,.htaccess,.htaccess,我对.htaccess有两条规则 RewriteEngine On 1)RewriteRule ^simple_api/api/([a-zA-Z]+) /simple_api/api.php?mode=$1 [QSA] 2)# Pass all requests not referring directly to files in the filesystem to index.php. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond

我对.htaccess有两条规则

RewriteEngine On

1)RewriteRule ^simple_api/api/([a-zA-Z]+)  /simple_api/api.php?mode=$1 [QSA]

2)# Pass all requests not referring directly to files in the filesystem to index.php.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^ index.php [L]

我希望规则1优先于规则2,但现在规则2始终有效,规则1丢失。

将第一条规则的标志从
[QSA]
更改为
[QSA,L]

这将确保当规则1匹配时,规则处理将停止。您可能还希望为规则1添加一个
RewriteCond
,以确保它不会捕获所有内容