代理服务器是位于客户端和后端服务器之间的中间硬件/软件。它接收来自客户端的请求,并将它们转发到源服务器。通常,代理用于过滤请求、日志记录请求或转换请求(通过添加/删除报文头、加密/解密或压缩)。
类型
有两种类型的代理:
正向代理
正向代理(Forward Proxy),通常称为代理、代理服务器或 Web 代理,是位于一组客户端机器前面的服务器。当这些计算机向互联网上的站点和服务发出请求时,代理服务器会拦截这些请求,然后代表这些客户端与 Web 服务器通信,就像中间人一样。
优点
以下是正向代理的一些优点:
- 阻止访问某些内容
- 允许访问受地理限制的内容
- 提供匿名
- 避免其他浏览限制
虽然代理提供了匿名的好处,但它们仍然可以跟踪我们的个人信息。代理服务器的设置和维护成本高昂,需要进行配置。
反向代理
反向代理是位于一个或多个 Web 服务器前面的服务器,用于拦截来自客户端的请求。当客户端向网站的源服务器发送请求时,反向代理服务器会拦截这些请求。
正向代理和反向代理之间的区别很微妙,也很重要。一种简单的总结方法是,前向代理位于客户端前面,并确保没有源服务器直接与该特定客户端通信。另一方面,反向代理位于源服务器前面,并确保任何客户端都不会直接与该源服务器通信。
引入反向代理会增加复杂性。单个反向代理会出现单点故障,配置多个反向代理(即故障转移)会进一步增加复杂性。
优点
以下是使用反向代理的一些优点:
- 提高安全性
- 缓存
- SSL加密
- 负载均衡
- 可扩展性和灵活性
负载均衡器与反向代理
等等,反向代理不是类似于负载均衡器吗?不,当我们有多台服务器时,负载均衡器很有用。通常,负载均衡器将流量路由到一组服务于相同功能的服务器,而反向代理即使仅对一个 Web 服务器或应用程序服务器也是有用的。反向代理也可以充当负载均衡器,但负载均衡器不能充当反向代理。
例子
以下是一些常用的代理技术: