1.描述
  • location是根据用户请求的URI来执行不用的应用
  • location 有”定位”的意思, 根据Uri来进行不同的定位
  • 在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上
2.语法
location [=|~|~*|^~] uri {
	//配置URI后需要执行的配置信息
}
3.匹配类型
  • 精准匹配
    location = patt{}
  • 一般匹配
    location patt{}
  • 正则匹配
    location ~ patt{}
4.解析过程

nginx location
location匹配过程:

  1. 先精准匹配,如果命中,立即返回结果并结束解析过程
  2. 判断一般匹配,如果有多个命中,“记录”下来“最长”的命中结果
  3. 继续正则匹配,按配置里的正则表达式顺序为准,由上到下开始匹配,一旦匹配成功,立即返回结果,并结束解析过程
  4. 匹配顺序:精准匹配 > 一般匹配 > 正则匹配
  5. 一般匹配:匹配顺序无所谓,按命中的长短确定;正则匹配:顺序有所谓,从前往后匹配
5.精准匹配
  • 语法

    location = patt {
    	config A
    }
    
  • 样例*

    如果 $uri == patt,匹配成功,使用configA
    location = / {
      root /var/www/html/;
      index index.htm index.html;
    }

6.一般匹配
  • 语法

    location  patt {
    	config B
    }
    
  • 样例*

    location / {
      root /usr/local/nginx/html;
      index index.htm index.html;
    }

7.正则匹配
  • 语法

    location ~ patt {
    	config C
    }
    
  • 样例*

    location ~ image {
      root /var/www/image;
      index index.html;
    }

相关文章:

  • 2021-09-24
  • 2022-12-23
  • 2022-12-23
  • 2021-11-11
  • 2021-09-29
  • 2021-11-22
猜你喜欢
  • 2021-05-05
  • 2022-01-27
  • 2022-01-14
  • 2021-06-30
相关资源
相似解决方案