文章目录
- 1、什么是正向代理
- 2、什么是反向代理
- 3、反向代理的作用
1、什么是正向代理
正向代理,“它代理的是客户端”,是一个位于客户端和目标服务器之间的服务器,为了从目标服务器取得内容,客户端向代理服务器发送一个请求并指定目标(目标服务器),然后代理服务器向目标服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。正向代理中目标服务器并不知道访问它的真实用户是谁,因为和它交互的是代理服务器。
比如我们在国内访问国外的YouTube、Twitter等网站,就是通过代理服务器实现的,这个就是正向代理的过程。
过程如下图:
作用:正向代理隐藏了用户,用户的请求被代理服务器接收代替,到了服务器,服务器并不知道用户是谁。
2、什么是反向代理
反向代理,“它代理的是服务端”,主要用于服务器集群分布式部署的情况下,反向代理隐藏了服务器的信息。
用户将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,这个过程中用户并不知道真正的请求发送到哪台服务器上了。
正向代理中目标服务器不知道用户是谁,反向代理中则相反,是用户不知道目标服务器是谁。
过程如下图:
反向代理隐藏了真实的服务端,当我们请求 https://www.processon.com/ 的时候,就像拨打 电信客服热线一样,背后可能有成千上万台服务器为我们服务,但具体访问到哪一台,我们不知道,也不需要知道,我们只需要知道反向代理服务器是谁就好了,https://www.processon.com 就是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。
3、反向代理的作用
- 可以起到保护网站安全的作用,任何来自Internet的请求都必须先经过代理服务器。
- 通过缓存静态资源,加速Web请求。
- 实现负载均衡。