最近更新:2020年12月29日 贡献者:简小兵

1. 什么是nginx?

  1. Nginx 是一款 **高性能** Web 服务器、代理服务器、负载均衡服务器。

2. 正向代理是什么?

  1. 是一个位于客户端和目标服务器之间的服务器(代理服务器),为了从目标服务器取得内容,客户端向代理服务器发送一个请求并指定目标,然后代理服务器向目标服务器转交请求并将获得的内容返回给客户端。
  2. 上一段可能大部分同学看了还是不太懂,我用一个例子给大家讲解一下,比如我们国内是无法访问国外的网站(例如谷歌),只能通过翻墙来访问。我们通过翻墙软件来访问谷歌时,此时的翻墙软件就充当了一个 正向代理服务器,下面用一个图来说明:

图片1.png

  1. 上图的翻墙软件是能够访问“谷歌服务器”的,用户是不能访问谷歌服务器的,用户通过翻墙软件也能够间接的访问到谷歌浏览器,这就是正向代理服务器的特征,它强调代理的是**客户端**(用户浏览器),它替用户的浏览器去访问谷歌浏览器,并将结果返回给用户浏览器。

图片2.png

3. 反向代理是什么?

  1. 是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
  2. 还是用一个例子来给大家讲解一下吧,比如,我们在访问“百度”网站时,通过域名 [https://www.baidu.com](https://www.baidu.com) 访问,看似是访问到了百度页面,但是我们不知道真正为我们提供服务的服务器,这样保护了服务器的安全性,还是用一张图来说明。

图片3.png

通过上图可以看出,反向代理服务器 强调代理的对象是 服务器端,保护服务器信息,我们的系统实际也采用这个方式。

4.总结

  1. 正向代理服务器代理的对象是**客户端**,更像是我雇佣了一个人,帮我做了我想做的事。
  2. 反向代理服务器代理的对象是**服务器端**,服务端只暴露反向服务器,然后通过反向代理服务器转发请求到真实服务器,**保护服务器信息**(当然,常常也多用于负载均衡,减轻服务器压力),客户端并不知道真正访问的目标服务器。