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

相关推荐
comedate41 分钟前
Windows / Linux GPU 虚拟内存布局差异与 CUDA 越界访问行为
linux·windows·mmu·cuda 越界访问
东风破_1 小时前
Docker 基础:为什么需要容器?
前端·后端·nginx
东风破_1 小时前
Docker 实战:使用 Nginx 作为容器入口代理 Node 服务
前端·后端·nginx
暴力求解2 小时前
Linux网络---传输层协议TCP(二)
linux·服务器·开发语言·网络·tcp/ip
JoyCong19983 小时前
ToDesk个人版、专业版、游戏版、设计版、性能版、团队版权益介绍
大数据·运维·游戏·远程工作·远程操作
ltl3 小时前
序列化格式深度对比:Protobuf、FlatBuffers、Cap’n Proto
linux
lengjingzju3 小时前
编译与调试完全指南—第17章 总结
linux
ltl3 小时前
容器网络性能真相:veth vs macvlan vs eBPF 数据面
linux
Elastic 中国社区官方博客4 小时前
ES95:面向 Elasticsearch 时间序列指标的自适应压缩
大数据·运维·elasticsearch·搜索引擎·架构·全文检索
我不会插花弄玉4 小时前
9.进程间通信(上)【由浅入深-Linux】
linux·共享内存·进程通信