nginx反向代理中server块拆解

发布时间:2024年01月17日

nginx配置文件可以分为三个部分,分别是全局块、events块和http块,server块包含在http块中(http块包含http全局块和server块)。以下对server块进行简单拆解分析。

一个server块的配置大致如下:

server {
? ? listen 80;
? ? server_name example.com;
?
? ? location / {
? ? ? ? proxy_pass http://example.com:80;
? ? ? ? proxy_http_version 1.1;
? ? ? ? proxy_set_header Upgrade $http_upgrade;
? ? ? ? proxy_set_header Connection 'upgrade';
? ? ? ? proxy_set_header Host $host;
? ? ? ? proxy_cache_bypass $http_upgrade;
? ? }
}

这里就会涉及到两个内容,一个是server,一个是location。大致总结起来就是这样,域名和服务器的对应关系,通过增加server实现;访问目录的匹配,通过增加location实现。

location存在以下规律(序号越小优先级越高):

  1. location = # 精准匹配,= 匹配优先级最高。一旦匹配成功,则不再查找其他匹配项
  2. 2.location ^~ # 带参前缀匹配,^~类型表达式。一旦匹配成功,则不再查找其他匹配项。
  3. location ~ # 正则匹配(区分大小写)
  4. location ~* # 正则匹配(不区分大小写)
  5. location /a # 普通前缀匹配,优先级低于带参数前缀匹配。
  6. location / # 任何没有匹配成功的,都会匹配这里处理
文章来源:https://blog.csdn.net/u010787182/article/details/135644172
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。