nginx.conf
Nginx为配置一个完整的静态Web服务器提供了非常多的功能,下面会把这些配置项分为以下8类进行详述:虚拟主机与请求的分发、文件路径的定义、内存及磁盘资源的分配、网络连接的设置、MIME类型的设置、对客户端请求的限制、文件操作的优化、对客户端请求的特殊处理。这种划分只是为了帮助大家从功能上理解这些配置项。
配置模块 | 描述 |
---|---|
main | 全局设置 其指令将影响其他所有部分的设置 |
server | 服务器虚拟主机设置 其指令主要用于指定虚拟机域名、IP、端口 其指令继承于main |
upstream | 上游服务器设置,主要为反向代理、负责均衡相关设置 其指令主要用于设置一系列的后端服务器,设置反向代理以及后端服务器的负载均衡 其指令没有基类,有特殊指令, |
location | URL匹配特定位置后的设置 部分用于匹配网页位置(比如:根目录"/“,”/images") 其指令继承于server |
server_name 与Host的匹配优先级如下:
1)首先选择所有字符串完全匹配的server_name,如 www.testweb.com 。
2)其次选择通配符在前面的server_name,如 .testweb.com。
3)再次选择通配符在后面的server_name,如 www.testweb. 。
4)最后选择使用正则表达式才匹配的server_name,如 ~^.testweb.com$。
5)如果Host与所有的server_name都不匹配,这时将会按下列顺序选择处理的server块
(1)优先选择在listen配置项后加入[default|default_server]的server块。
(2)找到匹配listen端口的第一个server块