第二章
WWW的主要协议—HTTP协议
Internet的基本协议是TCP/IP协议,目前广泛采用的FTP、 Archie、Gopher协议是TCP/IP应用层协议,不同的协议对应着不同的应用。
而WWW服务器使用的主要协议是HTTP协议,即超文本传输协议。 HTTP协议位于OSI模型的应用层,基于http协议的服务器不限于WWW,还可以是其它形式的信息。因而HTTP允许用户在一个统一界面下,可以采用不同的协议访问不同的服务,如FTP, SMTP等。
HTTP是为分布式超媒体信息系统设计的一个协议,它是无状态、面向对象的协议。HTTP还可用于名字服务器和分布式对象管理。
HTTP协议于1990年提出,经过几年的使用与发展,HTTP得以不断地完善和扩展。目前在WWW中使用的是HTTP/1.0,和HTTP/1.1。HTTPNG(Next Generation of HTTP)的建议已经提出。
一、HTTP协议的主要特点:
1)支持客户/服务器模式;
2)简单快速
客户机向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的不同类型。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3)灵活
HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标价。
4)无连接
无连接的含义是限制每次连接只处理一个请求。服务器处理完客户机的请求,并收到客户机的应答后,即断开连接。采用这种方式可以节省传输时间的占用。
5)无状态
HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着后续处理所需的前面信息必须重视,这样导致每次连接要传送的数据量增大。然而,另一方面,服务器也因此应答较快。
6)元信息
HTTP对所有事务处理都加了头,在主要数据前加上一块信息(元信息,即信息的信息),它使服务器能够提供正在传送数据的有关信息。
二、HTTP协议的作用原理
在WWW中,"客户机"与"服务器"是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户机在另一个连接中可能作为服务器。服务器运行时,一直在TCP80端口(WWW的缺省端口)监听,等待连接的出现。HTTP协议的作用原理包括四个步骤:
1.连接
WEB浏览器与WEB服务器建立连接,打开一个称为套接字(Socket)的虚拟文件,并把它约束在一个端口上。打开一个套接字就是建立一个虚拟文件,此文件的建立标志着连接建立成功。
2.请求
打开一个连接后,WEB浏览器通过SOCKET向WEB服务器提交请求。
HTTP的请求一般是GET 或POST命令。
HTTP/1.0 请求消息的格式为:
请求消息=请求行(通用信息|请求头|实体头)CRLF[实体内容]
请求行=方法 请求URL HTTP版本号CRLF
方法=GET|HEAD|POST|扩展方法
URL=协议名称+宿主名+目录与文件名
请求行中的方法描述为在指定资源中应该执行的动作,常用的方法有GET、HEAD和POST。
不同的请求对象对应的GET的结果是不同的,对应关系如下:
对象 GET的结果
文件 文件的内容
程序 该程序的执行结果
数据库查询 查询结果
HEAD———要求服务器查找某对象的元信息,而不是对象本身
POST———从客户机向服务器传送数据,要求服务器和CGI做进一步处理时会用到POST方法。POST主要用于发送HTML FORM的内容,让CGI程序处理。
一个请求的例子为:
GET http://WWW.swjtu.edu.cn/home.html HTTP/1.0
头信息又称为元信息,即信息的信息,利用元信息可以实现有条件的请求或应答。
请求头———告诉服务器怎样解释本次请求,主要包括用户可以接受的数据类型、压缩方法和语言等。
实体头———实体信息类型、长度、压缩方法,最后一次修改时间、数据有效期等。
实体———请求或应答对象本身。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>