1.什么是nginx

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

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

1.正向代理

Nginx不仅可以做反向代理,实现负载均衡。还能用作正向代理来进行上网等功能。正向代理:如果把局域网外的Internet想象成一个巨大的资源库,则局城网中的客户端要访问Internet, 则需要通过代理服务器来访问,这种代理服务称为正向代理。.

(在客户端配置代理服务器,通过代理服务器进行互联网访问)

 

GatewayWorker nginx反向代理 反向代理服务器nginx_代理服务器

2.反向代理

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

GatewayWorker nginx反向代理 反向代理服务器nginx_Nginx入门反向代理_02

Nginx配置实例-反向代理

  1. 实现效果

(1)打开浏览器,在浏览器地址栏输入地址www.123.cm,跳转到liunx系统tomcat主页面中

2.准备工作

(1)在liunx 统安装tomcat,用默认端口8080.tomcat安装文件放到liunx系统中,解压.进入tomcat的bin目录中, ./startup.sh启动tomcat服务器.

(2)开放8080端口

(3)在windows系统中通过浏览器访问tomcat服务器

3.在windows系统中通过浏览器访问tomcat服务器

GatewayWorker nginx反向代理 反向代理服务器nginx_反向代理_03

4.访问过程分析

GatewayWorker nginx反向代理 反向代理服务器nginx_反向代理_04

  1. 具体配置

第一步 在windows系统的host文件进行域名和ip对应关系的配置

GatewayWorker nginx反向代理 反向代理服务器nginx_服务器_05

 添加在host里的内容

ip + 域名

第二步在nginx进行请求转发的配置(反向代理配置)

GatewayWorker nginx反向代理 反向代理服务器nginx_Nginx入门反向代理_06

  1. 最终测试

通过域名直接访问tomcat

反向代理实例-2

1.实现效果

使用nginc反向代理,根据访间的路径跳转到不同端口的服务中

nginx监听端口为9001

例如:

访问http://127.0.0.1:9001/edu/直接跳转到127.0.0.1:8080.
访间http://127.0.0.1:9001/vod/直接跳转到127.0.0.1:8081

2.准备工作

  1. 准备两个tomcat服务器,一个8080端口,一个8081端口

(2)创建文件夹和测试页面.

  1. 具体配置
  2. 找到nginx的配置文件,配置反向代理配置

GatewayWorker nginx反向代理 反向代理服务器nginx_代理服务器_07

  1. 开放对外访问端口9001 8081 8080
  2. 最终测试

 



 

拓展,nginx配置文件

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

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

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

4.^~:用于不含正则表达式的uri前,要求Nginx服务器找到标识uri和请求字符串匹配度最高的location后,立即使用此location处理请求,而不再使用location块中的正则uri和请求字符串做匹配。

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