Nginx 入门

168 阅读2分钟

认识Nginx

什么是Nginx?

Nginx本质上来说是一个web服务器。它能提供高性能的HTTP和反向代理服务

这里,对于初学者来说,或许会有点懵。

到底什么是web服务器,什么又是反向代理呢?

web服务器

对于学习过springboot类似的框架的同学来说,在springboot中可以轻松搭建web服务器。功能就是提供上网浏览页面的作用。

那么,是什么让springboot具有上网浏览页面的功能呢?

在springboot启动的时候,我们会看到Tomcat打印的日志出现,其实springboot内嵌了Tomcat,而Tomcat里面其实也有了Web服务器的功能。

那么,我们为什么还要用Nginx作为web服务器呢?

相比于Tomcat,Nginx在性能上比它好的多,在高并发环境下,Nginx也不容易出现故障,事实上,大多数网站还是应用的Nginx作为web服务器。

反向代理

学过计算机的都听说过代理这个名词。

既然要学反向代理,那么正向代理我也顺便说一下。

正向代理:是指代理服务器堆目标服务器的代理,通常这个关系是一对一。

这就好比这个代理服务器是一个传话的人。总结:正向代理就是找个传话的人代替你发送请求。

如下图: image-20220930185554343.png

反向代理:相比于正向代理,反向代理是一个一对多的关系,一个代理服务器可以代理到多个服务器上面,并且目标服务器还可以是内网服务(外人无法正常访问,局域网),外网无法正常访问。

这就好比很多个河流涌向一个节口,然后又像尿分叉一样分了出去。

如下图: image-20220930185905052.png

区别正向代理反向代理
代理对象用户服务器
代理服务器和目标服务器关系一对一一对多
用户是否知道目标服务器
所以,这两者最本质的区别是:正向代理的对象是客户端,反向代理的对象是服务器。

由此可见,反向代理可以对外隐藏目标服务器,它隐藏了真实的服务端,例如我们发一个请求,背后可能被Nginx转发了很多次,有很多服务器在为我们所用。

例如:bing的网址就是反向代理服务器,反向代理服务器会把我们的真实请求转发到真实服务器上。

Nginx的优势

1.速度快,并发高

2.配置简单,扩展强。

3.高可靠性:Nginx采用多进程的运行方式

4.热部署:不用重启就可以重载配置,升级模块,类似于代码里面的热更新。

5.开源免费