HTTP协议及过程描述

HTTP 协议定义服务器端和客户端之间文件传输的沟通方式。目前HTTP协议的版本是Http1.1。RFC 2616描述了HTTP协议的具体信息。 

这个协议已经成为浏览器和Web站点之间的标准。 

当我上网的时候底层是如何进行交互的? 

当访问者点击一个超链接的时候,将会给浏览器提交一个URL地址。通过这个URL地址,浏览器便知道去链接那个网站并去取得具体的页面文件(也可能是一张图片,一个pdf文件)。 

HTTP工作的基础就是,连接一个服务器并开始传输文件到浏览器。 

HTTP传输的基本过程 

在http传输的过程中,被称为客户端的请求者向服务器请求一个文件。 

最基本的过程是: 
1 客户端连接一个主机; 
2 服务器接收连接, 
3 客户端请求一个文件, 
4 服务器发送一个应答. 

实例 

我们看几个典型的过程 

首先,我们想访问本页面。在浏览器上敲入“ http://www.maketop.net/resource/rs_041112_02.php ”.浏览器将连接 www.maketop.net 然后发送: 

>> GET /resource/rs_041112_02.php Http1.1 
>> Host:  www.maketop.net  
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, 
>> Accept-Language: en 
>> Accept-Encoding: gzip, deflate 
>> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10 
>> Connection: Keep-Alive 
>> 

解释:浏览器请求页面“/resource/rs_041112_02.php”。并使用HTTP1.1协议。并告诉服务器你的浏览器是Firefox0.10。操作系统是Windows XP。 浏览器希望保持与 www.maketop.net 之间的连接,并请求获得多的文件,包括网页中的图片。翻译成语言上面是: 

>> 用HTTP1.1协议获得 /resource/rs_041112_02.php 
>> 访问的主机是:  www.maketop.net  
>> 接收的文件包括了: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, 
>> 使用的语言是: en 
>> 接收的编码方式(浏览器能够解释的)是: gzip, deflate 
>> 用户的浏览器信息:Windows XP的操作系统 Firefox/0.10的浏览器 
>> 保持连接: 还要去图片 
>> 



www.maketop.net 的服务器发出响应: 

<< HTTP/1.1 200 OK 
<< Date: Mon, 12 Mar 2004 19:12:16 GMT 
<< Server: Apache/1.3.31 (Unix) mod_throttle/3.1.2 
<< Last-Modified: Fri, 22 Sep 2004 14:16:18 
<< ETag: "dd7b6e-d29-39cb69b2" 
<< Accept-Ranges: bytes 
<< Content-Length: 3369 
<< Connection: close 
<< Content-Type: text/html 
<< 
<< File content goes here 

浏览器并从服务器的响应中获得服务器的信息:比如运行在Apache。 
上面翻译成翻译成语言上面就是RFC 2616 
(摘自: http://www.maketop.net/resource/rs_041112_02.php ) 

<< HTTP1.1协议方式有效 
<< 当前时间是: Mon, 12 Mar 2004 19:12:16 GMT 
<< 服务器是: Apache/1.3.31 (Unix) mod_throttle/3.1.2 
<< 最后一次修改: Fri, 22 Sep 2004 14:16:18 
<< ETag: "dd7b6e-d29-39cb69b2" 
<< Accept-Ranges: bytes 
<< Content-Length: 3369 
<< Connection: close 
<< Content-Type: text/html 
<< 
<< File content goes here 

上面例子就是最简单的交互过程描述,需要对HTTP协议中具体的命令了解,就需要阅读 

- 作者: trueman 2005年09月4日, 星期日 20:31 回复(0) | 引用(0) 加入博采 
HTTP――网海之舟 HTTP(超文本传输协议,Hyper-Text Transport Protocol )是用于在互联 
网上传输超文本文件的协议。它对一个HTTP客户程序和一个HTTP服务程序进行端 
对端的连接。HTTP是在WWW (WWW )上所应用的最重要的协议。 

它是Web 自己的协议,用来从一个HTTP服务器上检索信息。这可以是用HTML 
写的文本文件,静态图象,声音文件,动画视频或仅是简单的文本文件:HTTP服 
务器知道怎样识别文件类型,并通过线路在传输之前告诉你的浏览器将要传来什 
么样的文件,以便浏览器知道如何对待。 

HTTP是Web 技术中的一个最基本的协议,它是一个应用层协议,直接用TCP 
层传递。整个协议的通信过程十分简单。 

为了要讲清HTTP传送一个文件的通信过程,首先有必要来重申一下URL 的概 
念。URL (Uniform Resource Locator)的中文意思为统一资源定位器,它是用 
来确定在IP网上Web 系统信息资源的位置的,URL 从结构上讲很有点像计算机中 
的文件名,例如下面就是一个URL. 

http://info.cern/hypertext/Geo.html  

这个URL 实际上要找的是Geo.html文件,前面都是路径名。在Web 系统中, 
就是用URL 来寻找相应文件的。当然实际上URL 还可以有复杂的形式并可带各种 
相关参数。在基本了解了URL 后,就可以来看HTTP是怎样工作的了。当客户机向 
服务器请求一个文件时,首先要建立一条TCP 连接,在TCP 连接好后,客户机就 
向服务器发送URL ,让服务器根据URL 去寻找相应的文件,找到文件后就从已建 
立好的TCP 通道上发给客户机,文件发送完毕即拆除TCP 连接。当要寻找另一个 
文件时,需要重复上述过程。 

从上述过程可以看出,HTTP协议十分简单。使用HTTP后,服务器需要做的事 
只是接受一个请求(URL ),根据用户的请求发送相应文件,服务器不要做任何 
检索轨迹的记录,从而使一个服务器支持的用户数大为增加。但HTTP也有不少缺 
点,因为其简单,每传一个文件就要建一次TCP 连接、拆除一次TCP 连接,当要 
传送的文件很小时就非常不合算了。另外由于服务器不能保留检索轨迹,因而为 
口令记忆等带来了很大的麻烦,导致系统效率下降
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值