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能够实现高效的负载均衡和故障转移,提高了系统的可靠性和性能

相关推荐
tntxia15 小时前
linux curl命令详解_curl详解
linux
扛枪的书生17 小时前
Linux 网络管理器用法速查
linux
SkyWalking中文站19 小时前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
顺风尿一寸20 小时前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
江华森1 天前
NumPy 数值计算基础入门
运维
唐青枫1 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux