以 =开头表示精确匹配,先判断精准命中,如果命中,立即返回结果并结束解析过程,如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。- 判断普通命中,如果有多个命中,记录下来最长的命中结果,与顺序无关。
- ^~开头表示uri以某个常规字符串开头,不是正则匹配,不会继续搜索正则命中,但是会继续搜索一般命中
- ~ 开头表示区分大小写的正则匹配;
- ~* 开头表示不区分大小写的正则匹配
- / 通用匹配, 如果没有其它匹配,任何请求都会匹配到
正则表达式的解析结果,按配置里的正则表达式顺序为准,由上到下开始匹配,一旦匹配成功立刻返回结果,并结束解析过程。
延伸分析:a. 普通命中:顺序无所谓,是因为按命中长短来确定的 b. 正则命中:顺序有所谓,因为是从前往后命中的
本文深入解析了URI匹配的四种方式:精确匹配、前缀匹配、正则区分大小写匹配及正则不区分大小写匹配。阐述了不同匹配类型在解析过程中的优先级与规则,以及如何确定最终匹配结果。
770

被折叠的 条评论
为什么被折叠?



