当前位置:Gxlcms > PHP教程 > Nginxlocation语法配置详解location的意思$locationlocation重定

Nginxlocation语法配置详解location的意思$locationlocation重定

时间:2021-07-01 10:21:17 帮助过:46人阅读

location 有“定位”的意思,可以根据URI来进行不同的的定位

在虚拟主机的配置中,是必不可少的,location,他可以把网站的不同部分,定位到不同的处理方式上

location 的语法

location [=|~|~*|^~] patt {

}

location 语句大致可以分为三种

location = demo {} 【精准匹配】

location demo {} 【普通匹配】

location ~ demo {} 【正则匹配】


在这三种匹配中精准优先匹配,如果精准匹配成功,则停止匹配过程

 location = / {
	 # 精确匹配 / ,主机名后面不能带任何字符串
          config A
       }
 location / {
 	 # 因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
 	 # 但是正则和最长字符串会优先匹配
         config B
  }
location ~ image {
        # 匹配任何以 /iamge/ 开头的地址,匹配符合以后,还要继续往下搜索
        # 只有后面的正则表达式没有匹配到时,这一条才会采用这一条
        config C
}
location /foo {
        # 字符匹配到 /foo,继续往下
        config D
}

    • =开头表示精确匹配
      如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。
    • ~ 开头表示区分大小写的正则匹配;
    • ~* 开头表示不区分大小写的正则匹配
    • / 通用匹配, 如果没有其它匹配,任何请求都会匹配到
      • / -> config A
        精确完全匹配
      • /image/logo.png -> config C
        匹配B以后,往下没有任何匹配,采用C
      • /foo -> config D
        匹配到F,往下匹配到D,停止往下
      • /abc/def -> config B
        匹配规则B
      nginx location配置,nginx location 过滤,nginx geo location,randomlocation,locationmanager,locationclient,setlocation,configlocation,echolocation,cursorlocation,locationholic,bdlocation,location的意思,$location,location重定

rewrite 重写

重写中用到的指令

if (条件) {} 设定条件,再进行重写

set #设置变量

return #返回状态码

break #跳出rewrite

rewrite #重写

If 语法格式

If 空格 (条件) {

重写模式

}

条件又怎么写?

答:3种写法

1: “=”来判断相等, 用于字符串比较

2: “~” 用正则来匹配(此处的正则区分大小写)

~* 不区分大小写的正则

3: -f -d -e来判断是否为文件,为目录,是否存在.


以上就介绍了Nginx location语法配置详解,包括了location,nginx方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行