Nginx配置文件的整体结构

一、Nginx配置文件的整体结构

从图中可以看出主要包含以下几大部分内容:

1. 全局块

该部分配置主要影响Nginx全局,通常包括下面几个部分

  • 配置运行Nginx服务器用户(组)

  • worker process数

  • Nginx进程PID存放路径

  • 错误日志的存放路径

  • 配置文件的引入

2. events块

该部分配置主要影响Nginx服务器与用户的网络连接,主要包括:

  • 设置网络连接的序列化

  • 是否允许同时接收多个网络连接

  • 事件驱动模型的选择

  • 最大连接数的配置

3. http块
  • 定义MIMI-Type

  • 自定义服务日志

  • 允许sendfile方式传输文件

  • 连接超时时间

  • 单连接请求数上限

4. server块
  • 配置网络监听

  • 基于名称的虚拟主机配置

  • 基于IP的虚拟主机配置

5. location块
  • location配置

  • 请求根目录配置

  • 更改location的URI

  • 网站默认首页配置

二、upstream 模块

upstream 这个模块是写一组被代理的服务器地址 (即定义的后端服务器列表中选取一台服务器接受用户的请求 ),然后配置负载均衡的算法

以下是一个简单的Nginx配置示例,展示了upstream模块的基本用法:

复制代码
upstream web_test { 
      server 10.10.2.100:80;
      server 10.10.3.100:80;
}
server {
      ....
      location / {         
             proxy_pass  http://web_test;     --请求转向 web_test 定义的服务器列表         
      }

在Nginx中,upstream模块用于定义一组后端服务器,这些服务器共同处理客户端请求。通过upstream模块,可以配置负载均衡、高可用性和反向代理等功能。在upstream块中,可以指定多个服务器并定义它们的一些属性,如权重、最大连接数等。

在这个示例中,定义了一个名为web_test的upstream块,里面包含了两个后端服务器的地址和端口号。Nginx可以针对这些服务器执行负载均衡策略,比如轮询、IP哈希、最小连接数等,以实现请求的分发。

通过upstream模块,Nginx能够实现高效的负载均衡和故障转移,提高了系统的可靠性和性能

相关推荐
学习&笔记2 分钟前
MTK(系统篇)user版本无法使用setenforce 0命令关闭selinux权限
linux·运维·服务器
Bdygsl29 分钟前
Linux(8)—— 进程优先级与环境变量
linux·运维·服务器
another heaven34 分钟前
【软考 磁盘磁道访问时间】总容量等相关案例题型
linux·网络·算法·磁盘·磁道
吕了了43 分钟前
87 Windows 系统安装的本质是什么?
运维·windows·电脑·系统
阿里巴巴P8资深技术专家2 小时前
docker容器启动报错
运维·docker·容器
杨云龙UP2 小时前
MySQL 8.0.x InnoDB 写入链路优化:Redo Log 与 Buffer Pool 扩容与缓冲区调优实战记录-20251029
linux·运维·数据库·sql·mysql
txzz88883 小时前
CentOS-Stream-10 系统安装之网络设置
linux·运维·服务器·网络·计算机网络·centos
qq_401700413 小时前
嵌入式Linux网口MAC地址修改
linux·运维·macos
Xの哲學4 小时前
Linux DRM 架构深度解析
linux·服务器·算法·架构·边缘计算
秋刀鱼 ..4 小时前
第三届信息化教育与计算机技术国际学术会议(IECA 2026)
运维·人工智能·科技·机器学习·制造