正向代理与反向代理

简介

正向代理和反向代理是两种不同的网络服务配置方式,它们在客户端和服务端之间起到中介的作用,但工作方式和目的有所不同。正向代理和反向代理是两种常见的代理技术,它们在网络通信中扮演着不同的角色,具有各自的特点和用途

正向代理(Forward Proxy)

定义: 正向代理位于客户端一侧,主要目的是代表客户端去获取资源。它是一种代理服务器,客户端通过它来访问互联网上的其他服务或资源。

工作原理:

  1. 请求转发: 当客户端发送请求时,该请求首先被发送到正向代理服务器。
  2. 代理处理: 代理服务器会处理这个请求,然后将其转发给最终的目的地(如Web服务器)。
  3. 响应返回: 目的地服务器的响应会被正向代理接收,并由代理服务器转发回客户端。

用途:

  • 隐藏客户端身份。
  • 提供缓存功能以加快访问速度。
  • 过滤和审查内容。
  • 控制对特定网站的访问。
理解

通俗来讲,我电脑没法联网,但是和我在同一个局域网的张三的电脑可以,那么我们可以通过他去联网,也就是张三的电脑就成了我们的代理服务器,我们使用张三的身份上网(真实情况不一定是这种情况,这里使用的例子是为了方便理解)

nginx正向代理配置
server {
    listen 3128;
    location / {
        proxy_pass http://$http_host$request_uri;
        proxy_set_header Host $http_host;
        proxy_connect_timeout 10s;
        proxy_read_timeout 10s;
    }
}

反向代理(Reverse Proxy)

定义: 反向代理位于服务端一侧,主要目的是代表服务端接收客户端的请求。它是面向服务端的代理服务器,通常用于负载均衡、加密/解密等任务。

工作原理:

  1. 接收请求: 客户端的请求直接发送到反向代理服务器。
  2. 代理处理: 反向代理服务器根据一定的规则选择后端服务器处理请求。
  3. 响应返回: 后端服务器将响应发送给反向代理,再由反向代理转发给客户端。

用途:

  • 负载均衡:将客户端请求分发到多个后端服务器。
  • 安全性:隐藏后端服务器的真实IP地址。
  • 加速:提供静态内容缓存,减少后端服务器负担。
  • SSL/TLS 终止:在反向代理上处理加密通信,减轻后端服务器的压力。
理解

通俗来讲,所有服务器都是企业内部局域网,对外网络是不可达的情况,但是这些服务都能被名为张三的公网ip访问,同在公网的我们可以通过张三去访问这些服务,这个时候张三就成了这些内网服务器的代理服务器,以张三的身份对外提供服务 (真实情况不一定是这种情况,这里使用的例子是为了方便理解)

nginx反向代理配置
http {
    upstream backend {
        server backend1.example.com;
        server backend2.example.com;
    }
 
    server {
        listen 80;
 
        location / {
            proxy_pass http://backend;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

总结

  • 正向代理 主要为客户端提供服务,帮助客户端隐藏身份或提高访问效率。
  • 反向代理 主要为服务端提供服务,帮助服务端实现负载均衡、安全性增强等功能。
正向代理反向代理
作用正向代理位于客户端一侧,主要目的是代表客户端去获取资源反向代理位于服务端一侧,主要目的是代表服务端接收客户端的请求
场景访问国外受限网站,企业内部网络访问互联网时的认证和审计大型网站负载均衡,CDN服务,安全防护等

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斗码士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值