要搞清楚什么是反向代理,首先需要理解什么是正向代理。
所谓正向代理,可以通过客户主机、中间人主机、服务器主机三者的关系来解析。客户主机需要连接服务器主机,但是不能直达,这时候客户主机就需要寻找并设置一个中间人主机,客户主机能连接到中间人主机上,中间人主机可以连接到服务器主机上,此时客户主机通过中间人中转信息,便可以达到连接服务器主机的效果。所谓中间人主机,就是正向代理。这个连接的过程,就是正向代理的过程。
正向代理的过程中,客户主机知道服务器主机的具体地址,但服务器主机不知道客户主机的具体地址,因为客户端需要向服务器主机具体地址发送信息,信息才会自动通过提前配置好的中间人主机进行转发,而服务器只知道中间人的具体地址。
所谓反向代理,就是客户端向中间人发送信息,中间人接收后由自己判断,并转发给与中间人连接的众多服务器中的一个。客户端只需要知道中间人的具体地址。
反向代理的过程中,客户主机不知道服务器主机的具体地址,但是服务器主机知道客户主机的具体地址。
代理的本质,就是"中介",主要是要搞懂,这个中介在代替client,还是代替server
-
“替真正的client”,向server申请服务的是正向代理
正向代理是client的行为,目的是为了伪造出"client身份" -
“替真正的server”,给client提供服务的是反向代理
反向代理是server方的行为,目标是伪造出"server身份"
正向代理和反向代理的优点:
1、代理可以让主机达到不能直达的目的地
2、client使用正向代理隐藏了自己的真实身份,server用反向代理保护了server的安全
3、反向代理可以提高访问速度
参考文章:https://blog.csdn.net/weixin_44404384/article/details/114675894