IP代理软件,http代理,API提取-黑洞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. 16

    2019-05

    如何利用代理IP软件做seo

      对于大型的平台类的网站来说,传统的seo手段已经不再有效。新站要想在前期获得有效的排名的话,唯有通过非常规的手段即黑帽技术。恰当的黑帽技术,能够让我们的网站在短时间之内有

  2. 23

    2019-03

    企业爬虫一般通过动态代理ip获取哪些信息?

    随着互联网的飞速发展,各行各业都逐渐应用了大数据,通过数据的变化,可以知道行业发展情况,并做出调整,那么企业利用代理ip让爬虫采集什么数据?毕竟数据并不一定都能产生价值的,

  3. 19

    2019-05

    如何利用代理IP软件赚钱?

     现实社会中,开一家店成本很高,并且有一定风险,然而在网络世界中,创建一个属于自己的网站并不难,不仅如此,这些网站还可以为你带来一定收益。网站获得收益的办法很多,当你的网

  4. 24

    2019-04

    HTTP代理是如何爬取数据的

    存在2种形式,下面为大家简单的介绍一下

  5. 04

    2019-05

    代理IP如何高效帮助爬虫获得大规模数据?

    我们知道,网站通常都有反爬虫机制,用来防止爬虫给网站带来太大的负载,影响网站的正常运行。所以,爬虫工程师在爬某网站之前都需要好好的研究一番,避免触发网站的反爬虫机制,这样

  6. 20

    2019-03

    代理IP爬虫怎么采集网页源码中看不到的数据

    如何从网页源码中抓取自己想要的数据,可是还有很多数据是源码中看不到的。