一、定义
正向代理
正向代理,代理的是客户端,为客户端发送请求,对服务器隐藏自己的真实客户端。
由下图可见,通过代理服务器,可以访问局域网外的服务器,突破自身ip的访问权限。比如翻墙访问外网。
一般而言,代理服务器会有一个硬盘缓存区。会将访问频率高的请求的响应存储起来,缩短访问的时间,提示效率。
因为客服端对服务端隐藏,所以起到了安全防护的作用。
反向代理
以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,将从服务器上得到的结果返回给客户端。
负载均衡:根据服务器的负载情况,将客户端请求分发到不同的真实服务器上,从而避免过载;
提高访问速度:反向代理服务器可以对静态内容及短时间内有大量访问请求的动态内容提供缓存服务,提高访问速度;
防止被攻击:服务器地址是隐藏的;
缓存:反向代理服务器可以用来缓存网站内容,提高网站性能;
SSL加密:为每个用户加密和解密安全套接字层(SSL)通信对于源服务器可能无效,反向代理可以通过加密和解密所有请求来完成这项工作。
二、异同点
相同点
-
都起到了连接与保护的作用,正向代理和反向代理所处的位置都是客户端和真实服务器之间,所做的事情也都是把客户端的请求转发给服务器,再把服务器的响应转发给客户端。
-
都能提高访问速度。
不同点
-
正向代理是用户客户端的代理,服务器不知道真正的客户端是谁;反向代理是服务器的代理,客户端不知道真正的服务器是谁;
-
正向代理架设在客户机和目标主机之间,反向代理架设在网络服务v
-
正向代理主要是用来解决访问限制问题;反向代理则是提供负载均衡、安全防护等作用。