黑洞HTTP

黑洞HTTP

您的位置: 首页 > 新闻资讯 > HTTP代理 > 正文

HTTP代理的方式及原理是怎么样的?

发布时间:2018年09月12日 来源:互联网

Web代理是一种存在于网络中间的实体,提供各式各样的功能。现代网络系统中,Web代理无处不在。今天我们就来聊一聊代理对 HTTP 请求及响应的影响。


HTTP代理存在两种形式,分别简单介绍如下:


第一种是 RFC 7230 - HTTP/1.1: Message Syntax and Routing(即修订后的 RFC 2616,HTTP/1.1 协议的第一部分)描述的普通代理。这种代理扮演的是「中间人」角色,对于连接到它的客户端来说,它是服务端;对于要连接的服务端来说,它是客户端。它就负责在两端之间来回传送 HTTP 报文。


第二种是 Tunneling TCP based protocols through Web proxy servers(通过 Web 代理服务器用隧道方式传输基于 TCP 的协议)描述的隧道代理。它通过 HTTP 协议正文部分(Body)完成通讯,以 HTTP 的方式实现任意基于 TCP 的应用层协议代理。这种代理使用 HTTP 的 CONNECT 方法建立连接,但 CONNECT 最开始并不是 RFC 2616 - HTTP/1.1 的一部分,直到 2014 年发布的 HTTP/1.1 修订版中,才增加了对 CONNECT 及隧道代理的描述,详见 RFC 7231 - HTTP/1.1: Semantics and Content。实际上这种代理早就被广泛实现。


HTTP代理.png

第一种代理


HTTP 客户端向代理发送请求报文,代理服务器需要正确地处理请求和连接(例如正确处理 Connection: keep-alive),同时向服务器发送请求,并将收到的响应转发给客户端。


下面这张图片来自于《HTTP 权威指南》,直观地展示了上述行为:假如我通过代理访问 A 网站,对于 A 来说,它会把代理当做客户端,完全察觉不到真正客户端的存在,这实现了隐藏客户端 IP 的目的。当然代理也可以修改 HTTP 请求头部,通过 X-Forwarded-IP 这样的自定义头部告诉服务端真正的客户端 IP。但服务器无法验证这个自定义头部真的是由代理添加,还是客户端修改了请求头,所以从 HTTP 头部字段获取 IP 时,需要格外小心。


第二种代理


HTTP 客户端通过 CONNECT 方法请求隧道代理创建一条到达任意目的服务器和端口的 TCP 连接,并对客户端和服务器之间的后继数据进行盲转发。


下面这张图片同样来自于《HTTP 权威指南》,直观地展示了上述行为:

HTTP代理.png


假如我通过代理访问 A 网站,浏览器首先通过 CONNECT 请求,让代理创建一条到 A 网站的 TCP 连接;一旦 TCP 连接建好,代理无脑转发后续流量即可。所以这种代理,理论上适用于任意基于 TCP 的应用层协议,HTTPS 网站使用的 TLS 协议当然也可以。这也是这种代理为什么被称为隧道的原因。对于 HTTPS 来说,客户端透过代理直接跟服务端进行 TLS 握手协商密钥,所以依然是安全的。


最后,HTTP 的认证机制可以跟代理配合使用,使得必须输入正确的用户名和密码才能使用代理。


相关文章内容简介

1 HTTP代理的方式及原理是怎么样的?

Web代理是一种存在于网络中间的实体,提供各式各样的功能。现代网络系统中,Web代理无处不在。今天我们就来聊一聊代理对 HTTP 请求及响应的影响。HTTP代理存在两种形式,分别简单介绍如下:第一种是 RFC 7230 - HTTP/1.1: Message Syntax and Routing(即修订后的 RFC 2616,HTTP/1.1 协议的第一部分)描述的普通代理。这种代理扮演的是「中间人」角色,对于连接到它的客户端来说,它是服务端;对于要连接的服务端来说,它是客户端。它就负责在两端之间来回传送 HTTP 报文。第二种是 Tunneling TCP based protocols through Web proxy servers(通过 Web 代理服务器用隧道方式传输基于 TCP 的协议)描述的隧道代理。它通过 HTTP 协议正文部分(Body)完成通讯,以 HTTP 的方式实 [阅读全文]

热门标签

最新标签

推荐阅读

  1. 20

    2019-08

    不同IP类型代表着什么,有哪些功能?

    现在是互联网营销的时代,互联网成为个人和企业重要的营销工具。互联网上有很多的方式和渠道可以利用起来。

  2. 13

    2019-03

    淘宝怎么做到安全刷单?

    一个淘宝新店刚开始运营的时候,如果没有销量就不会有推荐和排行,那么怎么先把销量做起来呢,比如刷单救就是其中一种:最开始不管是自己的熟人还是找专业的团队,或多或少每一家店铺

  3. 24

    2019-07

    购买高匿代理服务器和识别代理ip

    在国内的http代理市场中,稍加留神就会发现一个问题,那就是收费普遍比较高,因此大多数用户在电脑代理IP的购买上都很苦恼,那么有没有什么解决这个问题的方法呢其实质优价廉的代理IP还

  4. 26

    2019-03

    没有优质代理IP,爬虫会遇到什么困难

    大数据期间下,爬虫行业放肆生长,其技能日月牙异,从业者如过江之鲫,数不堪数。说到爬虫,就不得不说到署理IP,署理IP是爬虫能代理IP够高速生长的基石,必不可少,没有署理IP,爬虫就

  5. 29

    2019-06

    代理ip的优势是什么?

    然而随着互联网的飞速发展,越来越多的用户在上网过程中暴露个人的隐私信息,做电商的担心店铺刷单太多而造成被封,做营销的担心投票数不够而排不到好的名次…这个时候使用天下数据动

  6. 24

    2019-05

    设置代理ip后却不能上网了?

    为什么使用设置代理IP后不能上网了,虽然联网了,还能上QQ,但就是不能访问网站,的确令人着急!