location配置

location 有“定位”的意思,根据uri来进行不同的定位。 在虚拟主机的配置中,是必不可少的, location可以把网站的不同部分, 定位到不同的处理方式上。

location 的语法

location [ =|~|~*|^~ ] patt{ } 中括号可以不写任何参数,此时称为 一般匹配 也可以写参数 因此,大类型可以分为3种 location =patt {} 精准匹配 location patt{} 一般匹配

location ~ patt{ } 正则匹配

如何发挥作用?

首先看有没有精准匹配,如果有,则停止匹配过程。 location = patt { configA .....

}

如果$uri ==patt,匹配成功,使用configA

一般匹配patt,先理解成“字符串”,再理解成“正则表达式”,尽量的 多匹配uri,如果有多个一般匹配,谁匹配上的长度大,以谁为准。 如下例子:

location重写

set的用法

均衡负载upstream 不是up_stream

注意:截图中的http字符串去掉,最后的;分号加上。

注意: proxy_set_header 这没有下划线 X-Forwarded-For 是正确的写法