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

相关推荐
あ-33 分钟前
CubeSandBox配置CubeMaster CPU 超分
linux·运维·服务器
Escalating_xu36 分钟前
【Linux 网络编程】TCP Socket 编程(上):从 listen、accept 到完整回显通信
linux·网络·tcp/ip
老秦包你会43 分钟前
Linux第十课---------Linux信号
linux
艾伦_耶格宇1 小时前
【DOCKER容器实战】-5 Docker容器镜像的构建
运维·docker·容器
速捷工控 PLC触摸屏还原程序1 小时前
S7-200 SMART程序上传提示密码?维修、改造和换机怎么选处理路径?
运维·服务器
北风toto2 小时前
Linux 服务器如何判断 CPU 是否支持 x86-64-v2 指令集
java·linux·服务器
程序员-Benothing2 小时前
Linux抓包分析教程:tcpdump、Wireshark、tshark实战
linux·运维·服务器
QMCY_jason2 小时前
ubuntu x86_64架构的编译 aarch64架构的程序
linux·运维·ubuntu
分布式存储与RustFS2 小时前
RustFS 该跟 stable 还是 nightly?两条版本线的分工、风险与回退,一张表说清
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
拂拉氏2 小时前
【知识讲解】 Linux进程间通信之管道与共享内存
linux·进程间通信