我的.htaccess规则存在级联问题。考虑以下:
RewriteEngine on
RewriteRule ^product/(.*)$ product.php [L,QSA]
RewriteRule ^(.*)$ index.php [L]
有了上面的内容,如果我请求了一个类似http://example.com/product/product-slug的 URL ,那么我希望请求被路由到product.php。但是,它没有;我的index.php脚本被拾起请求。
我会认为第一个RewriteRule
会被匹配,并且因为它有一个L
(最后一个)标志,所以不会RewriteRule
匹配更多的 s,包括底部的“catch-all”一个。
为什么这没有按预期工作?