您现在的位置是:系统运维 >>正文
正向代理和反向代理
系统运维1人已围观
简介大家好,我是猿java。在日常工作中,我们经常会听到代理和反向代理这两个词,那么,什么是代理?什么又是反向代理?为什么有了代理还需要反向代理?他们之间有什么差异?今天我们就来一起聊一聊。一、定义 ...
大家好 ,代理我是和反猿java 。
在日常工作中,向代我们经常会听到代理和反向代理这两个词,代理那么,和反什么是向代代理?什么又是反向代理 ?为什么有了代理还需要反向代理 ?他们之间有什么差异 ?今天我们就来一起聊一聊。

在计算机和网络领域,和反代理(proxy)通常是向代一种充当中间人的服务器或服务 ,用于转发客户端(通常是代理用户计算机)和目标服务器之间的请求和响应 。源码下载它主要包括正向代理(forward proxy)和反向代理(reverse proxy)。和反
二 、向代正向代理在维基百科中 ,代理正向代理的和反定义是这样的:
正向代理:Forward Proxy,也称网络代理,向代就是我们通常说的代理 ,它是一种特殊的网络服务,允许一个终端(一般为客户端)通过这个服务与另一个终端(一般为服务器)进行非直接的连接。香港云服务器一些网关 、路由器等网络设备具备网络代理功能。一般认为代理服务有利于保障网络终端的隐私或安全 ,在一定程度上能够阻止网络攻击。
正向代理的模型示意图如下:

从上图可以看出,正向代理位于客户端和网络之间,可以将客户端全部隐藏在代理后面。当客户端在发起网络请求时,不直接连接到目标服务器,而是将请求发送到正向代理服务器。正向代理服务器代表客户端向目标服务器请求数据,并将响应返回给客户端。客户端对目标服务器的模板下载身份和存在是不知情的 ,只与代理服务器进行通信 。
三、应用场景匿名浏览正向代理可以隐藏客户端的真实IP地址和身份,使目标服务器只能看到代理服务器的IP地址 。这样,客户端可以在访问网站时保护自己的隐私和身份。
(1) 访问限制和绕过限制
通过代理,可以设置一些规则 ,防止客户端访问某些资源。相反,免费模板如果某些资源被限制,比如(防火墙) ,因此可以通过使用正向代理绕过这些限制,访问被屏蔽的内容或服务 。
(2) 加速和缓存
正向代理服务器可以缓存目标服务器返回的内容 。当多个客户端请求相同的资源时 ,代理服务器可以直接提供缓存的内容,减轻目标服务器的负载,并加快响应速度 。
(3) 安全性增强
正向代理可以在客户端和目标服务器之间增加一个额外的安全层 ,亿华云可以过滤和阻止恶意请求、病毒 、恶意软件等。
四 、反向代理在维基百科中 ,反向代理的定义是这样的 :
反向代理(Reverse proxy)在电脑网络中是代理服务器的一种。服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端,服务器租用客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器集群的存在[1] 。下面我们通过客户端向服务器发起一个HTTP请求这个经典的流程来讲解API网关及其重要的功能。
反向代理的模型示意图如下:

从上图可以看出 ,反向代理位于网络和服务器之间,可以把服务器隐藏在反向代理后面。当客户端发起请求时,请求会发送到反向代理服务器 ,反向代理服务器代表目标服务器向客户端提供服务 ,并将客户端的请求转发到相应的目标服务器上。
五 、应用场景 负载均衡反向代理可以将客户端的请求分发给多个目标服务器,以平衡服务器负载 。比如 Nginx ,可以将用户的请求分发到后端到多个服务器。
(1) 缓存
反向代理可以缓存目标服务器返回的内容以及一些静态资源。当多个客户端请求相同的资源时 ,反向代理可以直接返回缓存的内容,减轻目标服务器的负载 ,并加快响应时间,提升API性能 。
(2) 安全性
反向代理可以隐藏目标服务器 IP地址 ,可以过滤部分恶意请求、DDoS攻击等 ,并提供Web应用防火墙(WAF)功能 ,增强网络安全性 。
(3) SSL 终止
反向代理可以在代理服务器上终止传入的SSL连接 ,并将请求转发到目标服务器的非SSL连接上 。这样,目标服务器就可以避免处理SSL握手的负担,提高性能。
(4) 单一入口
反向代理可以作为单一入口点,将来自多个目标服务器的内容汇聚在一个统一的URL下。这对于构建复杂的应用程序或多服务器架构非常有用。
(5) 内容过滤和修改
反向代理可以对请求和响应进行内容过滤和修改。例如 ,它可以对传入的请求进行访问控制 、内容筛选,或者对返回的响应进行内容压缩和修改 。
六 、如何选择正向代理的选择,更多的可以从下面的功能出发 :
隐私保护和匿名性访问控制和绕过限制缓存和加速安全增强反向代理的选择 ,更多的可以从下面的功能出发:
负载均衡安全性和隐藏目标服务器SSL 终止缓存和加速在实际应用中,正向代理和反向代理也可以结合使用 ,以发挥各自的优势。比如,某公司拥有多个位于不同地理位置的目标服务器,可以使用反向代理来实现负载均衡和高可用性 。同时,为了提供隐私保护和访问控制,可以在客户端和目标服务器之间再添加一个正向代理层 。
七、总结代理是比较简单的一个知识点,但有时候也容易混淆。
正向代理更接近客户端 ,位于客户端和互联网之间,反向代理更接近服务器 ,位于互联网和服务器之间。
正向代理无法进行负载均衡和缓存资源优化,反向代理不能直接控制客户端的访问权限 。
Squid是一款常见的开源正向代理框架,Nginx是一款常见的开源反向代理框架 ,同时 Nginx也可以做正向代理 。现实工作中 ,还有很多框架既可以做正向代理,也可以做反向代理。
正向代理和反向代理的选择 ,我们更多的依据他们的应用场景。
Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“信息技术视野”。http://www.bziz.cn/news/271c8999639.html
相关文章
WPS Office两个严重漏洞曝光,已被武器化且在野利用
系统运维WPS Office作为一款用户基数超过2亿的广泛使用的办公套件,被发现存在两个关键漏洞CVE-2024-7262和CVE-2024-7263),这些漏洞可能导致用户遭受远程代码执行攻击。这两个漏洞的 ...
【系统运维】
阅读更多如何选择保护密码?
系统运维为什么需要强密码?我们可能每天都使用个人识别码 (PIN)、密码或口令。从 ATM 取钱或在商店使用借记卡,到登录电子邮件或在线零售商。跟踪所有数字、字母和单词组合可能令人沮丧,但这些保护措施很重要, ...
【系统运维】
阅读更多金融机构第三方风险管理(TPRM)的目标与实施
系统运维企业网络安全建设是一项体系化工作,任何一处的短板都将影响其最终安全防护效果。随着数字化转型的深入,很多企业已经高度重视自身的网络安全保障工作,却往往忽视了对第三方安全风险的有效管理。不管企业规模大小, ...
【系统运维】
阅读更多