Nginx的server_name匹配执行顺序
由于server_name指令支持通配符和正则表达式,因此在包含多个虚拟主机的配置文件中,可能会出现一个名称被多个虚拟主机的server_name匹配成功,当遇到这种情况,当前的请求交给谁来处理呢?
server{listen 80;server_name ~^www\.\w+\.com$;default_type text/plain;return 200 'regex_success';
}server{listen 80;server_name www.leon.*;default_type text/plain;return 200 'wildcard_after_success';
}server{listen 80;server_name *.leon.com;default_type text/plain;return 200 'wildcard_before_success';
}server{listen 80;server_name www.leon.com;default_type text/plain;return 200 'exact_success';
}server{listen 80 default_server;server_name _;default_type text/plain;return 444 'default_server not found server';
}
结论:
exact_success
wildcard_before_success
wildcard_after_success
regex_success
default_server not found server!!
No1:准确匹配server_nameNo2:通配符在开始时匹配server_name成功No3:通配符在结束时匹配server_name成功No4:正则表达式匹配server_name成功No5:被默认的default_server处理,如果没有指定默认找第一个server
Nginx的server_name匹配执行顺序相关推荐
- nginx开发_Filter模块执行顺序
Filter模块执行顺序 Filter模块的执行顺序是在执行configure文件时决定的,configure文件执行完成后生成objs/ngx_modules.c,文件中定义了一个数组ngx_mod ...
- Nginx location执行顺序和匹配规则
nginx location执行顺序和匹配原则根据location的特点分为普通和正则两种,执行顺序和匹配规则的差异也在于此. 执行顺序 nginx会优先执行普通location,不管普通locati ...
- 必学必会的nginx配置location匹配顺序总结
location 匹配规则: location 路径正则匹配: 符号 说明 ~ 正则匹配,区分大小写 ~* 正则匹配,不区分大小写 ^~ 普通字符匹配,如果该选项匹配,则,只匹配该选项,不再向下匹配其 ...
- nginx配置location匹配顺序总结
location匹配顺序 "="前缀指令匹配,如果匹配成功,则停止其他匹配 普通字符串指令匹配,顺序是从长到短,匹配成功的location如果使用^~,则停止其他匹配(正则匹配) ...
- nginx之location匹配规则
Nginx之location 匹配规则详解 有些童鞋的误区 1. location 的匹配顺序是"先匹配正则,再匹配普通". 矫正: location 的匹配顺序其实是" ...
- nginx 配置文件的匹配规则
引出 之前在对php-fpm 进行nginx代理时, 为了对后台限定 IP 访问, 添加了如下配置: location ^~ /admin {allow 127.0.0.1;deny all; } 结 ...
- Nginx的11个执行流程
1 Nginx简介 Web服务器市场份额 Nginx [engine x] 最初由 Lgor Sysoev 编写.根据 Netcraft 的数据,到2020年9月,Nginx 服务或代理了25.76% ...
- Nginx的location匹配与rewrite重写跳转
目录 Nginx的location匹配与rewrite重写跳转 一.常用的Nginx正则表达式 二.location 分类 location常用的匹配规则 优先级 location示例说明 Rewri ...
- nginx的优先匹配规则
nginx的优先匹配规则 以=开头表示精确匹配 如 A 中只匹配根目录结尾的请求,后面不能带任何字符串. ^~ 开头表示uri以某个常规字符串开头,不是正则匹配 ~ 开头表示区分大小写的正则匹配; ~ ...
最新文章
- dubbo学习过程、使用经验分享及实现原理简单介绍
- leetcode网学习笔记(1)
- 零基础代码学python-零基础学python之构建web应用(入门级)
- IDEA中的HTTP Client Editor测试API
- redis学习(二) redis数据结构介绍以及常用命令
- day2 java的数据转换与强制转换
- mfc大观之五、六(消息机制和消息运行)
- 计算机网络—信道划分与介质访问控制
- UIView用户事件响应
- Spring操作数据库几十次后就JDBC begin transaction failed
- 知名国产论坛,凉了!!!!
- Sql server bulk insert
- Harbor启动访问502错误
- UI设计师福利之手把手打造SVG动画应用的微场景
- pdfjs 浏览器打印字体模糊问题
- Redis 如何实现防止超卖和库存扣减操作?
- C# Winform窗体置顶(解决this.this.TopMost = true失效的问题)
- 基于MATLAB改进Otsu阈值分割的车道线检测
- eslint报错解决方案:--fix的使用
- No enclosing instance of type 错误的解决方法
热门文章
- 【CKFinder】解决上传中文名文件乱码和文件重命名的问题
- 动态连接库的两种方式
- Optimize a Flex application using deferred instantiations
- django 数据库中中文转化为汉语拼音
- go学习笔记-标准库
- aspnet_regiis.exe -i 执行报错
- HDU_2577 How to Type(DP)
- 通向架构师的道路(第一天)之Apache整合Tomcat
- Grafana Worldmap外网用户request地图监控
- 【328天】每日项目总结系列066(2017.12.30)