您好,欢迎访问三七文档
HTTP协议B/S基本通信协议万维网概述工作模式浏览器URL超文本万维网文档(WorldWideWeb)万维网概述万维网不是一种独立意义的互联网的缩写,也可以简称为Web,中文名称为“万维网”万维网是一个由许多包含链接的超文本文档,通过相互链接组成的复杂而又庞大的资源系统万维网是因特网提供的一种服务工作模式41.获取用户请求(URL地址)2.WEB服务器根据请求查找信息资源3.根据需要进行编译,生成HTML页面4.获得所要的页面并显示客户端浏览器Web服务器请求响应浏览器客户端浏览器包含三个构成部分:控制程序、解释程序和协议处理程序。显示输出转换成适合用户显示硬件的命令来处理版面细节根据用户使用的通信协议调用相应的通信接口,完成通信功能URL-统一资源定位符万维网是包含链接的超文本文档通过相互链接组成的系统万维网是分布式的,链接的指向是世界范围内的文档,这给如何描述这类链接带来了一定的困难链接必须标明所指向文档的存放地点和文档名Internet上有各种各样的应用,如何获取各种应用的文档解决:统一资源定位符(UniformResourceLocator,URL),一种通用的为万维网各种资源进行定位的文本字符串。URL格式URL的一般形式为:协议://主机[:端口]/文件名访问文档所采用的协议名,如:http——超文本传输协议资源https——用加密传送的超文本传输协议ftp——文件传输协议file——本地电脑或网上分享的文件存放资源的服务器在因特网中的地址或域名协议在服务器上开放的端口,可有可无(缺省为80)在服务器上的文档名,包括路径和文件名从超文本到超媒体超文本:创建的文档包含有指向其他文档的而引用。是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本。早期的超文本中节点只能以文本形式呈现,随着信息技术的发展,现在节点可以包括不同类型的数据:如文本、图像、音频、视频、动画等。可称之为超媒体。习惯上还是叫做超文本静态文档文件的内容是在文件被创建而不是在使用时确定的。动态文档文件的内容是在浏览器请求该文档时才由Web服务器创建。活动文档对于许多应用,我们需要程序能够在客户端运行。HTTP协议概述HTTP协议的工作模式HTTP协议的特点HTTP协议的报文格式HTTP抓包分析HTTP协议概述SocketFTPHTTPSMTPDNSTCPUDPIPLANsMANsWANsDNSTFTPSNMPICMPIGMPARPRARPHTTPHTTP协议概述HTTP(HyperTextTransferProtocol)超文本传输协议HTTP是客户端浏览器或其它程序与Web服务器之间的应用层通信协议,通过HTTP实现数据在Internet上的发送和接收。功能:用于在服务器和客户端之间传输超文本文件。在1990年就得到了应用HTTP的版本有V0.9、V1.0、V1.1和V2.0。目前常用的版本是1.1HTTP协议的工作模式浏览器Web服务器1.建立TCP连接2.发送HTTP请求3.HTTP应答4.关闭TCP连接HTTP协议是一种请求/响应协议HTTP请求报文请求报文由客户机发送给服务器以请求数据典型的HTTP请求报文格式如下:请求行首部一个空行主体空格空格方法SP请求URISPHTTP版本CRLF0到多个首部名:首部值空格可有可无,通常是一些需要发送的备注信息。HTTP请求类型HTTP1.1支持请求方法:方法名备注GET获取一个URL指定的资源,即资源实体HEAD只请求文档的首部信息,而不包含文档的内容POST从客户端向服务器端发送一些信息(需要主体部分)PUT从服务器向客户端发送一些信息DELETE请求服务器删除指定的页面TRACE网络跟踪,允许客户端查看消息回收过程(用于测试)CONNECT与PROXY之间的连接管理OPTIONS查询能力,允许客户端查看服务器的性能HTTP请求请求首部字段(RequestHeaderFields)首部字段含义User-agent标志客户程序Accept客户端能够接受的媒体格式Accept-charset客户端能够处理的字符集Accept-encoding客户端能够处理的编码方案Accept-language客户端能够接受的语言Authorization客户端具有何种准许From用户的电子邮件地址Host客户端的主机和端口号If-modified-since只当比指明日期更加新时才发送这个文档If-match只当与给定标记匹配时才发送这个文档If-not-match只当与给定标记不匹配时才发送这个文档If-range只发送缺少的那部分文档If-unmodified-since若在指明日期之后未改变,则发送文档Referrer指明被链接的文档的URLUser-went标志客户程序HTTP请求报文请求消息示例:GET:closeUser-agent:Mozilla/4.0Accept-Encoding:gzip,compressAccept-language:zh-cnCRLFEntity-BodyHTTP响应报文状态代码的类型及说明:代码说明1XX信息响应类,表示接收到请求并且继续处理2XX处理成功响应类,表示动作被成功接收、理解和接受3XX重定向响应类,为了完成指定的动作,必须接受进一步处理4XX客户端错误,客户请求包含语法错误或者是不能正确执行5XX服务端错误,服务器不能正确执行一个正常的请求常见状态码状态码原因短语200正确ok201创建created202接收accepted204无内容nocontent300多种选择301永久移动302暂时移动304未被修改常见状态码状态码原因短语200正确ok201创建created202接收accepted204无内容nocontent300多种选择301永久移动302暂时移动304未被修改状态码原因短语400错误请求401未授权403禁止404未发现500内部服务错误501未实现502错误网关503服务未提供响应消息示例HTTP/1.1200OKConnection:closeDate:Thu,13Oct200503:17:33GMTServer:Apache/2.0.54(Unix)Last—Nodified:Mon,22Jun199809;23;24GMTContent—Length:682lContent-Type:text/htmlHTTP协议特点支持客户/服务器模式请求/响应简单快速客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的只有GET、HEAD、POST等几种。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快灵活HTTP允许传输任意类型的数据对象。传输的类型由Content-Type加以标记。无状态无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大如何解决HTTP无状态问题通过技术层面Session——服务器端的解决方案服务器端为客户所开辟的存储空间,在其中保存的就是用户状态信息Cookie——客户器端的解决方案在客户端保存SessionID在发送请求时附带ID重写Url——无Cookie的解决方案将SessionID以参数的形式写入到URL中WAP(WirelessApplicationProtocol)无线应用协议
本文标题:HTTP协议.
链接地址:https://www.777doc.com/doc-2877285 .html