1、超文本传送协议科技名词定义中文名称超文本传送协议英文名称:hypertext transport protocol;HTTP定义:一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。应用学科:通信科技(一级学科);通信协议(二级学科)以上内容由全国科学技术名词审定委员会审定公布目录超文本传送协议 1HTTP 协议简介 .1特点 2请求信息 2请求方法 2安全超文本协议 3通信协议 3HTTP 协议简介超文本传输协议 (HTTP-Hypertext transfer protocol) 是分布式,协作式,超媒体系统应用之间的通信协议。是万维网(world
2、 wide web)交换信息的基础。它允许将超文本标记语言 (HTML) 文档从 Web 服务器传送到 Web 浏览器。HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接。您可以单击一个链接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。HTTP 工作在 TCP/IP 协议体系中的 TCP 协议上。客户机和服务器必须都支持 HTTP,才能在万维网上发送和接收 HTML 文档并进行交互。现在 WWW 中使用的是 HTTP/1.1,它是由 RFCs(Requests for comments)在 1990年 6 月制定。目前交由 IETF(Internet Engi
3、neering Task Force) 和 W3C(World Wide Web)负责修改。但最终还是由 RFCs 对外发布。特点HTTP 协议的主要特点可概括如下:1、支持客户/ 服务器模式。http 协议 简介2、 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有 GET、HEAD、POST 。每种方法规定了客户与服务器联系的类型不同。由于 HTTP协议简单,使得 HTTP 服务器的程序规模小,因而通信速度很快。3、灵活:HTTP 允许传输任意类型的数据对象。正在传输的类型由 Content-Type 加以标记。4、无连接:无连接的含义是限制每次连接只处理一个请求
4、。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。5、无状态:HTTP 协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。请求信息发出的请求信息包括以下几个: 请求行,例如 GET /images/logo.gif HTTP/1.1,表示从/images 目录下请求 logo.gif这个文件。 (请求)头,例如 Accept-Language: en 空行 可选的消息体 请求行和标题必须以 作为结尾(也就是
5、,回车然后换行)。空行内必须只有而无其他空格。在 HTTP/1.1 协议中,所有的请求头,除 post外,都是可选的。请求方法HTTP/1.1 协议中共定义了八种方法(有时也叫“动作” )来表明 Request-URI 指定的资源的不同操作方式:OPTIONS 返回服务器针对特定资源所支持的 HTTP 请求方法。也可以利用向 Web 服务器发送*的请求来测试服务器的功能性。 HEAD 向服务器索要与 GET 请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。 GET 向特定的资源发出请求。注意:GET 方法不应当被用于
6、产生 “副作用”的操作中,例如在 web app.中。其中一个原因是 GET 可能会被网络蜘蛛等随意访问。 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。 PUT 向指定资源位置上传其最新内容。 DELETE 请求服务器删除 Request-URI 所标识的资源。 TRACE 回显服务器收到的请求,主要用于测试或诊断。 CONNECT HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。 方法名称是区分大小写的。当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回
7、状态码 405(Method Not Allowed);当服务器不认识或者不支持对应的请求方法的时候,应当返回状态码 501(Not Implemented)。 HTTP 服务器至少应该实现 GET 和 HEAD 方法,其他方法都是可选的。当然,所有的方法支持的实现都应当符合下述的方法各自的语义定义。此外,除了上述方法,特定的HTTP 服务器还能够扩展自定义的方法。安全超文本协议安全超文本传输协议(Secure Hypertext Transfer Protocol, S-HTTP)是一种结合HTTP 而设计的消息的安全通信协议。S-HTTP 协议为 HTTP 客户机和服务器提供了多种安全机制
8、,这些安全服务选项是适用于 Web 上各类用户的。还为客户机和服务器提供了对称能力(及时处理请求和恢复,及两者的参数选择)同时维持 HTTP 的通信模型和实施特征。S-HTTP 不需要客户方的公用密钥证明,但它支持对称密钥的操作模式。这意味着在没有要求用户个人建立公用密钥的情况下,会自发地发生私人交易。它支持端对端安全传输,客户机可能首先启动安全传输(使用报头的信息),用来支持加密技术。在语法上,S-HTTP 报文与 HTTP 相同,由请求行或状态行组成,后面是信头和主体。请求报文的格式由请求行、通用信息头、请求头、实体头、信息主体组成。相应报文由响应行、通用信息头、响应头、实体头、信息主体组
9、成。 目前有两种方法来建立连接:HTTPS URI 方案和 HTTP 1.1 请求头(由 RFC2817 引入)。由于浏览器对后者的几乎没有任何支持,因此 HTTPS URI 方案仍是建立安全超文本协议连接的主要手段。安全超文本连接协议使用 https:/代替 http:/通信协议 协议 协议参考模型 协议控制信息 协议转换 开放系统互连 协议转换器 物理层 表示层 开放系统互连参考模型 应用层 会话层 网络层 传送层 数据链路层 文件传送协议 通用路由封装 分组数据协议 用户数据报协议 传输控制协议 IPv6 协议 IPv4 协议 因特网协议 链路协议 接入协议 选路协议 应用协议 超文本传送协议 点到点协议 隧道协议 点到点隧道协议 地址解析协议 网络地址转换