Php Apache mod_重写专用性:模块在大多数通用重写规则下停止

Php Apache mod_重写专用性:模块在大多数通用重写规则下停止,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我对Apache mod_rewrite中规则的特殊性有一个问题,其中重写模块在第一次出现规则时停止,并忽略更具体的规则: RewriteRule ^manuals static/manuals.html [END,NC] RewriteRule ^manuals/manual_1 static/manual_1.html [END,NC] 如果我访问manuals/I正确地看到manuals.html页面,但是如果我访问manuals/manual_1,我会再次看到manuals.html页

我对Apache mod_rewrite中规则的特殊性有一个问题,其中重写模块在第一次出现规则时停止,并忽略更具体的规则:

RewriteRule ^manuals static/manuals.html [END,NC]
RewriteRule ^manuals/manual_1 static/manual_1.html [END,NC]
如果我访问manuals/I正确地看到manuals.html页面,但是如果我访问manuals/manual_1,我会再次看到manuals.html页面。
如何修改上述内容以观察最具体的匹配,而不是在第一次部分匹配时停止?

您可以在规则中使用正则表达式锚定^

RewriteRule ^manuals/?$ static/manuals.html [END,NC]
RewriteRule ^manuals/manual_1/?$ static/manual_1.html [END,NC]

是的,第一条匹配规则获胜。在更具体的规则后面放上你的通用的所有规则。是的。只需颠倒顺序。