我有这2个LocationMatch指令
<LocationMatch "^.*system/app_dev\.php(.*)$"> ProxyPass fcgi://127.0.0.1:9998/var/www/example.com/trunk/system/web/app_dev.php </LocationMatch> <LocationMatch "^.*system(.*)$"> ProxyPass fcgi://127.0.0.1:9998/var/www/example.com/trunk/system/web/app.php </LocationMatch>
我预计
http://example.com/system/app_dev.php/files/abc
由第一条规则来匹配
http://example.com/system/files/abc
由第二条规则。
但在我的情况下,两者都是由第二条规则相匹配。
这是在Apache 2.4上
尝试逃避斜线?
<LocationMatch "^.*system\/app_dev\.php(.*)$">
Location和LocationMatch应该被定义, 不太具体的首先 。 所以第二个是被匹配的,因为它应该被首先定义,并且覆盖你在第一个定义的内容。