收录了这篇文章
location 匹配
~ #匹配一个正则表达式,区分大小写 ~* #匹配一个正则表达式,不区分大小写 ^~ #匹配普通字符,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录 = #进行普通字符精确匹配 @ #"@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files
演示:
location = / { # 只匹配"/" } location / { # 匹配所有请求,长字符或者正则表达式会优先匹配 } location ^~ /images/ { # 匹配任何以 /images/ 开始的请求,并停止匹配其它location } location ~* .(gif|jpg|jpeg|png)$ { # 匹配以 gif, jpg, or jpeg结尾的请求 }
匹配的优先级:
精准匹配->普通匹配->正则匹配
location 匹配的优先级与配置文件中的顺序无关。一般而言,首先进行精准匹配(=),然后进行普通匹配(^~)。如果普通匹配多个规则均命中,则选择最长匹配。然后进行正则匹配,正则匹配与顺序有关。
声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。