我在Apache mod_rewrite中存在规则特异性问题,其中重写模块在规则第一次出现时停止并忽略更具体的规则:
RewriteRule ^manuals static/manuals.html [END,NC]
RewriteRule ^manuals/manual_1 static/manual_1.html [END,NC]
如果我访问手册/我正确地看到页面manuals.html但是如果我访问手册/ manual_1,我再次访问manuals.html页面。 如何修改上述内容以观察最具体的匹配,而不是在第一次部分匹配时停止?
答案 0 :(得分:0)
您可以在规则中使用正则表达式锚点^
和$
来修复它:
RewriteRule ^manuals/?$ static/manuals.html [END,NC]
RewriteRule ^manuals/manual_1/?$ static/manual_1.html [END,NC]