~和~* 开头表示区分大小写的和不区分大小写的正则匹配。
!~和!~* 开头表示区分大小写不匹配及不区分大小写不匹配的正则匹配。
/ 通用匹配,任何请求都会匹配,通常放着配置的最后。
匹配优先级:
= > ^~ > ~, ~* > 空
全匹配 > 路径匹配 > 正则匹配 > 字符串匹配
示例:
# 字符串匹配
location /static {
alias /home/www/static;
access_log off;
}
# 路径匹配,此时proxy_pass的结束 / 决定是否带上匹配的路径
location ^~ /333/ {
proxy_pass http://106.185.48.229/;
}
# 正则匹配,此时proxy_pass不能带结束 /
location ~ ^/(xxx|yyy)/ {
proxy_pass http://106.185.48.229;
}
# 字符串匹配,此时proxy_pass的结束 / 决定是否带上匹配得路径
location /zzz/ {
proxy_pass http://106.185.48.229/;
}
# 默认匹配
location / {
proxy_pass http://127.0.0.1:8080;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易采站长站。








