語法規(guī)則
location [=|~|~*|^~] /uri/ { ... }
- = 表示精確匹配,這個優(yōu)先級也是最高的
- ^~ 表示 uri 以某個常規(guī)字符串開頭,理解為匹配 url 路徑即可或辖。nginx 不對 url 做編碼,因此請求為/static/20%/aa,可以被規(guī)則^~ /static/ /aa 匹配到(注意是空格)
- ~ 表示區(qū)分大小寫的正則匹配
- ~* 表示不區(qū)分大小寫的正則匹配(和上面的唯一區(qū)別就是大小寫)
- !~和!~*分別為區(qū)分大小寫不匹配及不區(qū)分大小寫不匹配的正則
- / 通用匹配,任何請求都會匹配到,默認匹配
匹配的優(yōu)先級
優(yōu)先級(=) > (^~) > (~|~*|!~|!~*) > (/)
首先匹配 =,其次匹配^~, 其次是按文件中順序的正則匹配,最后是交給 / 通用匹配惜论。當(dāng)有匹配成功時候,停止匹配,按當(dāng)前匹配規(guī)則處理請求镊叁。
location配置實例
請求后的結(jié)果