Nginx使用的是反向代理,那你知道正向代理吗?

68 阅读2分钟

正向代理(Forward Proxy)

定位: 位于客户端和互联网之间,代表客户端向服务器发送请求。

用途

  • 隐藏客户端身份:服务器仅看到代理的IP,无法追踪真实客户端。  

  • 绕过访问限制:突破网络封锁(如访问被屏蔽的网站)。

  • 缓存加速:存储常用资源,减少重复请求的带宽消耗(如企业内网代理)。

配置方式

客户端需主动设置代理(如浏览器配置代理服务器地址)。

示例场景

  • 公司内网通过代理访问外网。

  • 用户使用 VPN 或 Shadowsocks 访问境外网站。

反向代理(Reverse Proxy)

定位: 位于服务器和客户端之间,代表服务器接收并分发请求。

用途

  • 隐藏服务器身份:保护后端服务器IP,防止直接暴露。  

  • 负载均衡:将请求分发给多个服务器,提升系统吞吐量。

  • 安全防护:提供 SSL 加密、防火墙、DDoS 防御等功能。

  • 缓存加速:缓存静态资源,减轻后端压力(如 CDN)。

配置方式

客户端无需任何设置,反向代理对用户透明。

示例场景

  • 使用 Nginx 分发请求到多个应用服务器。

  • 网站通过 Cloudflare 提供安全防护和加速。

 

核心区别

特征正向代理反向代理
代理对象代表客户端(隐藏客户端)代表服务端(隐藏服务端)
配置方客户端主动设置服务端部署,客户端无感知
典型用途翻墙、匿名访问、缓存负载均衡、安全防护、加速 
透明性对服务端透明(客户端被隐藏)对客户端透明(服务端被隐藏)

  类比解释

正向代理:像“中介”帮你去办事(如代购),对方不知道你是谁。

反向代理:像“前台”帮你分配任务(如银行柜台),你不需要知道后台是谁处理。