http编程web服务器的开发.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?第9章 HTTP编程:Web服务器的开发9.1 HTTP原理9.2 Web服务器的开发9.3 自制浏览器访问Web服务器的实验在本章中,将自己动手来开发一个Web服务器,程序运行效果如图9.1所示。9.1 HTTP原理9.1.1 万维网的工作过程在Internet中工作的主机,当要访问万维网中的某个网页时,大致要经过以下步骤。(1)用户首先要确定网页文件所在的URL(统一资源定位符),由URL唯一确定用户要访问的文件在Internet上的位置,如设为/ home.html。(2)浏览器(相当于客户)向DNS(域名服务器)发出请求,要求把域名转化为它所对应的IP地址。(3)DNS进行查询后,向浏览器发出应答。如域名对应IP地址为。(4)在查询得到网页所在的服务器IP地址后,就进入了HTTP的工作阶段。浏览器向IP地址为的主机发出与端口80建立一条TCP连接的请求。9.1.1 万维网的工作过程(5)连接建立成功后,浏览器发出一条请求传输网页的HTTP命令,格式为GET/ home.html。(6)当域名为的服务器收到请求后,向浏览器发送home.html文件。(7)文件发送完成后,由服务器主动关闭TCP连接,至此HTTP的工作过程也结束了。(8)浏览器显示收到的网页文件home.html。(9)如home.html文件中包含有图片,则还要与服务器再次建立一个TCP连接以下载图片。9.1.1 万维网的工作过程下面看HTTP是如何把网页文件传输到客户端的(如图9.2所示)。9.1.2 超文本传输协议1.客户机HTTP请求HTTP请求可以由多行组成,但最后一行必须是空行。HTTP/1.1最常用的请求格式如下:请求方法 URL HTTP版本号请求头信息请求数据一个空行,这是请求的结束行9.1.2 超文本传输协议客户可用的请求方法见表9.1。方 法描 述GET返回URL所指的文档,一般情况下用于请求下载Web网页。例如,GET http:// / home.html HTTP/1.1HEAD请求文档头,它类似于GET请求,只是Web服务器返回指定文档的首部信息。该请求通常被用来测试超文本链接的正确性、可访问性和最近是否进行了修改POST它与GET方法相反,请求服务器接收指定的文档,但它不是替换已有的文档,只是将新数据附加到它的后面。一般可用来向新闻组发送一条消息,或发送能由交互用户填写的表格等PUT它与GET方法相反,用从客户端传送的数据取代指定文档中的内容,使客户可以向远程Web服务器传送网页等文件DELETE请求服务器删除指定的页面OPTIONS允许客户端查看服务器的性能TRACE用于测试允许客户端查看的消息回收过程9.1.2 超文本传输协议“HTTP版本号”常为HTTP/1.0或HTTP/1.1。“请求头信息”是可选项,它用于向服务器提供客户端的其他信息。请求头信息见表9.2。请求头信息描 述Accept客户端接收的数据类型。例如:Accept: text/html,表示客户可接收HTML类型的文本User Agent客户方软件类型Authorization认证消息,包括用户名和口令Referer用户获取的Web页面9.1.2 超文本传输协议2.服务器HTTP应答服务器在处理完客户的请求之后,要向客户发送响应消息。HTTP/1.1的响应消息格式如下:状态行响应头响应数据9.1.2 超文本传输协议在表9.3中详细列出了这些响应代码的含义。响 应 代 码说 明成功响应200OK,请求成功201OK,建立新的资源(POST命令)202请求被接受,但处理未完成204OK,但没有内容返回重定向,需要用户代理执行更多的动作301所请求的资源已被指派为新的固定URL302所请求的资源临时位于另外的URL304文档没有修改(条件GET)客户差错400错误的请求401未被授权;该请求要求用户认证402不明原因的禁止404没有找到服务器差错500内部服务器差错501没有实现502错误的网关,网关或上游服务器来的无效响应504服务暂时失效9.1.2 超文本传输协议“响应头”是服务器向客户方提供请求文档信息或服务器的状态信息,见表9.4。响 应 头说 明ServerWeb服务器程序的信息Date当前服务器的日期和时间Last-Modified请求文档最近一次修改的时间Expires请求文档过期时间Content-length数据长度(字节)Content-type数据MIME类型WWW-authenticate用于通知客户方需要的认证信息(如用户名、口令等)9.1.2 超文本传输协议该例子中,显然是由客户通过浏览器提出要下载一个网页的请求,使用的方法是GET,获得的Web服务器响应见表9.5。服务器响应信息说 明HTTP/1.1

文档评论(0)

xyz118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档