正向代理与反向代理

正向代理与反向代理

我们在开发过程中,经常会设置代理来转发请求;在配置云服务器等时又会去做一些反向代理。但是这些代理究竟有什么区别?它们各自实现了什么作用?都不太了解,这里查阅了一些资源,进行了简单的记录。

正向代理

正向代理示意图.png

​ 图片来自于网络

正向代理中,客户端(client)和正向代理服务器(proxy)同属于一个局域网,通过代理服务器proxy访问外部资源。比如:用户由于某些原因无法访问某些资源,但是有一个服务器能够访问这些资源,而用户能够访问这个服务器,那么用户就可以先连接这台服务器,告诉他需要访问的资源内容,然后让这个服务器去访问对应的资源,并返回给用户。

正向代理主要是为了通过代理去访问一些无法访问的资源。此时代理服务器对外就表现为一个客户端。这其实类似于代购业务,我们无法直接去购买国外的一些便宜的商品,但是我们可以通过一些代理商去帮助我们购买这些商品。这个代购就相当于我们这里的代理。

正向代理的其他用途:

1、缓存资源:代理服务器可以帮助缓存资源,减少请求

2、进行监控:代理服务器可以记录用户访问记录

反向代理

反向代理.png

​ 图片来自于网络

反向代理中,服务端(server)和反向代理服务器(proxy)同属于一个局域网,通过代理服务器来接受外部的请求,然后代理服务器会分析url,根据特定的规则将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给请求连接的客户端。

反向代理主要是为了将请求分发给内部的服务器。此时代理服务器对外就表现为一个服务器。(请求转发)

反向代理的其他用途:

1、加密和SSL加速

2、负载均衡:反向代理进行任务分配的工作就是负载均衡。

3、缓存静态内容

4、压缩

5、减速上传

6、安全

7、外网发布

区别

1、是否需要手动设置代理服务器IP。

正向代理需要我们手动设置代理服务器ip或者域名进行访问,由设置的服务器ip或者域名去获取资源。反向代理不需要你做任何设置,直接访问服务器真实ip或者域名。但是服务器内部会根据url来对请求分发到指定的服务器。

2、客户端和服务器的不可见性。

正向代理是代理客户端,为客户端收发请求,使得真实客户端对服务器不可见。

反向代理是代理服务器端,为服务器收发请求,使得真实服务器对客户端不可见。

参考文章:

[正向代理与反向代理【总结】

[正向代理和反向代理的区别](

posted @ 2019-12-06 17:33  海因斯坦  阅读(144)  评论(0编辑  收藏  举报