Nginx配置

Nginx

Nginx简介

1. 什么是nginx

Nginx是一个高性能的HTTP和反向代理服务器,特点是占用内存少,并发能力强,专为性能优化而开发。

2. 反向代理

客户端对于代理是无感知的,不需要做任何配置,只需要客户端将请求发送到反向代理服务器,由代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务服务器,暴露的是代理服务器的地址,隐藏了真实服务器IP地址。
在这里插入图片描述

3. 负载均衡

负载均衡是高可用网络基础架构的关键组件,通常用于将请求分发到多个服务器来提高服务的性能和可靠性。
在这里插入图片描述

4. 动静分离

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度,降低原来单个服务器的压力。

Nginx相关命令

1. 防火墙命令

  • 查看开放的端口号
firewall-cmd --list-all
  • 设置开放的端口号
firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
  • 重启防火墙
firewall-cmd --reload

2. Nginx操作常用的命令

  • 当前版本号
./nginx -v
  • 停止nginx
./nginx -s stop
  • 热加载nginx
./nginx -s reload

3.配置文件

  • 全局块
    从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令,主要包括配置运行Nginx服务器的用户(组)、允许生成的worker process数,进程PID存放路径、日志存放路径和类型以及配置文件的引入等。
    在这里插入图片描述
    worker_process的值越大,表示可以支持的并发量越大,但也会受硬件、软件等制约

  • events块
    events块涉及的指令主要影响Nginx服务器与用户的网络连接,是否允许同时接收多个网络连接,选取哪种时间驱动模型来处理连接请求,每个worker process可以同时支持的最大连接数
    在这里插入图片描述
    比如worker_connections表示可以支持的最大连接数

  • http块

    • (1)http全局块
      http 全局块配置的指令包括文件引入、MIME-TYPE 定义、日志自定义、连接超时时间、单连接请求数上限等

    • (2)server块
      location 指令说明
      该指令用于匹配URL。语法如下:

location [ = | ~ | ~* | ^~] uri {

}
  1. =: 用于不含正则表达式的uri前,要求请求字符串与uri严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
  2. ~:用于表示uri包含正则表达式,并且区分大小写
  3. ~*:用于表示uri包含正则表达式,并且不区分大小写
  4. ^~:用于不含正则表达式的uri前,要求Nginx服务器找到标识uri和请求字符串匹配度最高的location后,立即使用此location处理请求,而不再使用location块中的正则uri和请求字符串匹配

4. Nginx负载均衡策略

  1. 轮询(默认)
    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

  2. weight
    weight代表权重默认为1,权重越高被分配的客户端越多

  3. ip_hash
    每个请求按访问ip的hash结果分配,这样每个客户固定访问一个后端服务器

  4. fair
    按后端服务器的响应时间来分配请求,响应时间短的优先分配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值