1.什么是nginx
Nginx(“engine x”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少、并发能力强,实际上nginx的并发确实在同类型的网页服务器中表现较好
Nginx转为性能优化而开发,性能时期最重要的考量,实际上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数
1.正向代理
Nginx不仅可以做反向代理,实现负载均衡。还能用作正向代理来进行上网等功能。正向代理:如果把局域网外的Internet想象成一个巨大的资源库,则局城网中的客户端要访问Internet, 则需要通过代理服务器来访问,这种代理服务称为正向代理。.
(在客户端配置代理服务器,通过代理服务器进行互联网访问)
2.反向代理
反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只 ,需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP
Nginx配置实例-反向代理
- 实现效果
(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服务器
4.访问过程分析
- 具体配置
第一步 在windows系统的host文件进行域名和ip对应关系的配置
添加在host里的内容
ip + 域名
第二步在nginx进行请求转发的配置(反向代理配置)
- 最终测试
通过域名直接访问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.准备工作
- 准备两个tomcat服务器,一个8080端口,一个8081端口
(2)创建文件夹和测试页面.
- 具体配置
- 找到nginx的配置文件,配置反向代理配置
- 开放对外访问端口9001 8081 8080
- 最终测试
拓展,nginx配置文件
1.=:用于不含正则表达式的uri前,要求请求字符串与uri严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
2.~:用于表示uri包含正则表达式,并且区分大小写。
3.~*:用于表示uri包含正则表达式,并且不区分大小写
4.^~:用于不含正则表达式的uri前,要求Nginx服务器找到标识uri和请求字符串匹配度最高的location后,立即使用此location处理请求,而不再使用location块中的正则uri和请求字符串做匹配。
注意:如果uri包含正则表达式,则必须要有~或者*标识。