语法规则: location [=||*|^~] /uri/ { … }
- = 开头表示精确匹配
- ~ 开头表示区分大小写的正则匹配
- !~ 开头表示区分大小写的不匹配
- *~ ** 开头表示不区分大小写的正则匹配
- *!~ ** 开头表示不区分大小写的不匹配
- ^~ 开头表示uri以某个常规字符串开头
- / 通用匹配,任何请求都会匹配到
优先级:
- 匹配=
- 匹配^~
- 按文件中规则的顺序匹配
- 最后交给 / 作通用匹配
必选规则
#第一必选规则:直接匹配网站根,通过域名访问网站首页比较频繁,使用这个会加速处理
location = / {
#规则
}
#第二必选规则:处理静态文件请求,这是nginx作为http服务器的强项
location ^~ /static/ {
#目录匹配
root /webroot/static/;
}
location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
#后缀匹配
root /webroot/res/;
}
#第三必选规则:通用规则,用来转发动态请求到后端应用服务器
location / {
#规则
}