版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 HTTP协议 一舟 2009-11-19 1 浏览器 2 浏览器 3 关于HTTP的问题 HTTP是什么? 工作原理是什么? HTTP和HTTPS的区别? 重要的头信息有哪些,都有什么作用? 非文本(图片、文件)是怎么传输的? 4 HTTP是什么? /zh-cn/Http URI/URL/URN C/S模式 Application Layer(类似FTP,SMTP等等) Request/Response范式 RFC2616 /html/rfc2616 超文本超文本“转移转移”协议协议 5 历史版本 HTTP
2、/0.9 跨网络的简单原始数据传输,只接受 GET ,通讯中不指定版本号,且不 支持请求头,已过时 HTTP/1.0 还在使用,尤其在代理服务器应用方面,RFC1945 通讯中指定版本号,MIME消息格式 HTTP/1.1 默认持久链接,分层代理,考虑了缓存、 虚拟主机等等影响 6 工作原理是什么? http:/ 81.html 7 工作原理图列 8 实验 9 HTTP与HTTPs的区别 HTTP的安全版 默认使用TCP端口443 HTTPS是两个协议的结合,即传输层SSL 应用层HTTP 服务器必需有PKI证书,而客户端则不一定 10 重要概念 1.连接(Connection):一个传输层的
3、实际环 流,它建立在两个相互通讯的应用程序之 间。 2.消息(Message):HTTP通讯的基本单位。 3.请求(Request):一个从客户端到服务器 的请求信息包括应用于资源的方法、资源 的标识符和协议的版本号。 11 重要概念 4.响应(Response):一个从服务器返回的 信息包括HTTP协议的版本号、请求的状态 和文档的MIME类型。 5.资源(Resource):由URI标识的网络数据 对象或服务。 6.实体(Entity):数据资源或来自服务资源 的回映的一种特殊表示方法,它可能被包 围在一个请求或响应信息中。一个实体包 括实体头信息和实体的本身内容。 12 重要概念 7.客
4、户机(Client):一个为发送请求目的而 建立连接的应用程序。 8.用户代理(UserAgent):初始化一个请求 的客户机。它们是浏览器、编辑器或其它 用户工具。 9.服务器(Server):一个接受连接并对请求 返回信息的应用程序。 13 重要概念 10.源服务器(OriginServer):是一个给定资 源可以在其上驻留或被创建的服务器。 11.代理(Proxy):一个中间程序,它可以充 当一个服务器,也可以充当一个客户机, 为其它客户机建立请求。代理经常作为通 过防火墙。 14 重要概念 12.网关(Gateway):一个作为其它服务器 中间媒介的服务器。与代理不同的是,网 关接受请
5、求就好象对被请求的资源来说它 就是源服务器。 13.通道(Tunnel):是作为两个连接中继的 中介程序。一旦激活,通道便被认为不属 于HTTP通讯。 14.缓存(Cache):响应信息的局域存储。 15 http:/:80/s/search?q=淘宝UED&btnG=GCN+搜索 URL 协议类型 主机 端口 路径和查询 查询参数 大小写不敏感 为 空 即 默 认 不安全的字符和%HEXHEX相同 http:/:80/smith/home.html htTP:/ABC.com/%7Esmith/home.html http:/ABC.com:/%7esmith/home.html 其他:UR
6、L的长度限制到底是多少?参数如果编码? 16 时间格式 Sunday, 06-Nov-94 08:49:37 GMT Sun Nov 6 08:49:37 1994 Sun, 06 Nov 1994 08:49:37 GMT 17 HTTP-Message HTTP-Message (Request-Line | Status-Line) *(Message-Header CRLF) Message-Body (Request-Line | Status-Line) *(message-header CRLF) CRLF message-body CRLF 18 Request-Line Me
7、thod SP Request-URI SP HTTP-Version CRLF Request-Line Method Request-URI HTTP-Version SP SP CRLF 19 Status-Line HTTP-Version SP Status-Code SP Reason-Phrase CRLF Status-Line Reason-Phrase Status-Code HTTP-Version SP SP CRLF 20 Method GET DELETE TRACE CONNECT PUT HEADOPTIONS POST 21 Status-Code 信息 10
8、0 101 成功 201 202 203 204 205 206 200 重定向 300 303 304 305 306307 301 302 4. 4. 417 402 401 403 404 客户端错误 400 服务器错误 500 503 504 502505 501 22 状态码举例 1xx:信息信息仅在与HTTP服务器沟通时使用 100(“Continue”) 2xx:成功成功成功收到、理解和接受动作 200(“OK”)、201(“Created”)、204(“No Content”) 3xx:重定向重定向为完成请求,必须进一步采取措施 301(“Moved Permanently”)
9、、303(“See Other”)、304(“Not Modified”)、 307(“Temporary Redirect”) 4xx:客户端错误客户端错误请求包含错误的语法或不能完成 400(“Bad Request”)、401(“Unauthorized”)、403(“Forbidden”)、 404(“Not Found”)、405(“Method Not Allowed”)、406(“Not Acceptable”) 、409(“Conflict”)、410(“Gone”) 5xx:服务器端错误服务器端错误服务器不能完成明显合理的请求 500(“Internal Server Err
10、or”)、503(“Service Unavailable”) 23 Message-Header Cache-Control, Connection, Date, Pragma, Trailer, Transfer-Encoding, Upgrade, Via, Warning Accept, Accept-Charset, Accept-Encoding, Accept- Language, Authorization, Expect, From, Host, If-Match, If- Modified-Since, If-None-Match, If-Range, If-Unmodif
11、ied- Since, Max-Forwards, Proxy-Authorization, Range, Referer, TE, User-Agent Accept-Ranges, Age, ETag, Location, Proxy-Authenticate, Retry-After, Server, Vary, WWW-Authenticate Allow, Content-Encoding, Content-Language, Content- Length, Content-Location, Content-MD5, Content-Range, Content-Type, Ex
12、pires, Last-Modified 通用 请求 响应 实体 24 Message-Header-其他 Cookie Set-Cookie X-Powered-By X-Requested-With “X-”开头 25 重要的HTTP头 Accept-Charset Content-Type Accept-EncodingContent-Encoding Cache-Control User-Agent Accept Expires Last-Modified Location Age ETag DateHost Referer Server 26 请求的Header举例 Accept:请
13、求希望服务器能响应何种表现格式。 Accept-Encoding:告诉服务器可以接收何种压缩格式传输,以减少带 宽。 Range:请求获得一个资源的部分表示,常与If-Unmodified-Since一起 用。 If-Modified-Since:通过前一次响应Last-Modified的时间值,当条件不 成立,请求成功返回。 If-Match:通过前次响应ETag值,当条件不成立,请求成功返回。 If-Range:通过前次响应的ETag或Last-Modified值,若请求部分变化, 服务器需返回新的范围。 Authorization:按特定认证方案编码的用户名和密码证书,服务器接收 验证通
14、过执行请求。 27 响应的Header举例 Accept-Ranges:表明支持部分Get请求,客户端通过Head请求获取该 值,然后发送Range报头请求,获取资源部分表示。 Content-Encoding:对应Accept-Encoding请求报头。 Content-Language:实体主体采用的自然语言,对应Accept- Language请求报头,可能多个值。 Content-Length:给出实体主体大小,客户端可据此做读取准备,也可 通过Head请求来获知。 Content-Location:把请求资源的规范URI告知客户端,但并不要求其 使用新URI。 Content-MD5
15、:实体主体MD5,可检测错误损坏。 28 媒体类型 请求 Accept-Charset Accept Content-Type响应 29 内容编码 请求 Accept-Encoding Content-Encoding响应 gzip compress x-gzip x-compress deflate identity 30 传输编码 Transfer-Encoding响应 chunked 31 传输范围 请求 Range Content-Range 响应 206200 Accept-Ranges 32 缓存 减少完成的请求:Validation 性能 减少请求:Expiration 33 缓
16、存失效 减少请求:Expiration Expires, Date, Age 年龄计算 更新周期计算 是否失效:年龄-更新周期 34 缓存证实 减少完成的请求:Validation 弱证实:Last-Modified 强证实:Etag (1.0不支持) If-Modified-Since, If-Unmodified-Since If-Match, If-None-Match 35 可缓存性 可缓存性: Cacheability 状态码是:200, 203, 206, 300, 301, 410,除非明确的禁止 其他状态码都禁止,除非明确允许 支持Range, Content-Range = 206 理论上:除了明确指出不可缓存的以外都可以被缓存理论上:除了明确指出不可缓存的以外都可以被缓存 实际上:需要服务器指定实际上:需要服务器指定失效失效和和证实证实才能被缓存才能被缓存 36 缓存控制 C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年版的云计算服务合同
- 不可撤销信用证范文(2024版)
- 2025年度草种市场调研与销售合同3篇
- 《任教学科语》课件
- 2024高新技术产品进出口贸易合同
- 2024招投标与合同管理实务:国有企业合规管理细则3篇
- 2025年度草场租赁与草原畜牧业发展协议3篇
- 2024年网络直播平台技术服务与授权合同
- 2024房地产公司合同类别
- 2025年度航空航天发动机采购合同范本与性能测试要求3篇
- 《榜样9》观后感心得体会二
- 2024年公安机关理论考试题库附参考答案(基础题)
- 2023年高考文言文阅读设题特点及备考策略
- 暖通工程合同
- 生产型企业规章管理制度(3篇)
- 钢结构之楼承板施工方案流程
- 2024年营销部工作人员安全生产责任制(2篇)
- (正式版)SHT 3046-2024 石油化工立式圆筒形钢制焊接储罐设计规范
- 志愿服务证明(多模板)
- 游戏综合YY频道设计模板
- 食材配送投标服务方案
评论
0/150
提交评论