1.Nginx 简介

1、nginx是什么

  Nginx (“engine x”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

  Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数。

2、反向代理

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

  1.保证内网的安全,阻止web攻击,大型网站,通常将反向代理作为公网访问地址,Web服务器是内网

  2.负载均衡,通过反向代理服务器来优化网站的负载

3、负载均衡

  客户端请求访问应用服务器,最简单的就是n对1模式,n个客户端同时访问同一个应用服务器,当同一时间的并发数量较大时,应用服务器处理不过来,很有可能会造成服务器宕机,如果有且仅有一台服务器时,这个服务器挂了,那么应用就会陷于崩溃的状态.;解决方案便可以横向扩充n台应用服务器,并且客户端访问与应用服务器中间加上负载均衡配置,负载均衡能实现的效果主要有三个:

1.转发功能

  按照一定的算法【权重、轮询】,将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量。

2.故障移除

  通过心跳检测的方式,判断应用服务器当前是否可以正常工作,如果服务器期宕掉,自动将请求发送到其他应用服务器。

3.恢复添加

  如检测到发生故障的应用服务器恢复工作,自动将其添加到处理用户请求队伍中。
在这里插入图片描述

4、动静分离

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

  简单来说,即动态请求和静态请求分开处理,没有严格物理空间的隔离,从实现角度可以大致分为两种:

  1.纯粹把静态文件独立成单独的域名,放在独立的服务器;

  2.动态跟静态文件混合在一起发布,通过 nginx 来分开;
在这里插入图片描述

5、Nginx配置文件精简

在这里插入图片描述
1.全局块:

  从配置文件开始到 events 块之间的内容,主要会设置一些影响 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等;
在这里插入图片描述
2.event块
在这里插入图片描述
3.http块 :

  Nginx 服务器配置中最频繁的部分,代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里。需要注意的是:http 块也可以包括 http 全局块、server 块

3.1 http全局块:

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

3.2 sever块:

  每个 http 块可以包括多个 server 块,而每个 server 块就相当于一个虚拟主机。而每个 server 块也分为全局 server 块,以及可以同时包含多个 locaton 块。

3.2.1 sever全局块:

  最常见的配置是本虚拟机主机的监听配置和本虚拟主机的名称或 IP 配置

3.2.2 location块:

  一个 server 块可以配置多个 location 块。主要作用是基于 Nginx 服务器接收到的请求字符串(例如 server_name/uri-string),对虚拟主机名称(也可以是 IP 别名)之外的字符串(例如 前面的 /uri-string)进行匹配,对特定的请求进行处理。地址定向、数据缓存和应答控制等功能,还有许多第三方模块的配置也在这里进行;

6、补充location部分

location指令说明。
该指令用于匹配URL,语法如下:

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

}

  1.=: 用于不含正则表达式的uri前,要求请求字符串与uri严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求

  2.~: 用于表示uri包含正则表达式,并且区分大小写

  3.~*: 用于表示uri包含正则表达式,并且不区分大小写

  4.^~: 用于不含正则表达式的uri前,要求Nginx服务器找到标识uri和请求字

  符串匹配度最高的location后,立即使用此location处理请求,而不再使用location

  块中的正则uri和请求字符串做匹配

注意: 如果uri包含正则表达式,则必须要有或者*标识。

location匹配规则 参考:https://blog.csdn.net/xiaobaixiongxiong/article/details/89455850

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值