location 匹配格式
location [=|~|~*|^~] /uri/ { … } //方框里面的参数为可选项,括号里为指令集
location 表达式分类
1. 「前缀字符串」:以 = (精确匹配)或 ^~ 修饰符开头或者不带任何修饰符的字符串
location = /static/img/logo.jpg {...}
location ^~ /static/img/logo.jpg {...}
location /static/img/logo.jpg {...}
2. 「正则表达式」:以~*(不区分大小写),或者~(区分大小写)修饰符开头,例如:下面的正则表达式匹配的是以“gif|jpg|jpeg” 文件后缀名结尾的所有URI,\. 代表文件后缀名。
location ~* \\.(gif|jpg|jpeg)$ {...}
location ~ \\.(gif|jpg|jpeg)$ {...}
文字版描述匹配规则
优先级: = 大于 ^~ 大于 正则表达式 大于 通用匹配
^~ ,前缀匹配时,是遍历之后,以最长的前缀字符串作为匹配的最终结果。
location 匹配时是先匹配前缀字符串的几种类型的表达式,再匹配正则表达式