完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
网络出现后,带给人们生活上的改变是,我们可以随时随地在www网络浏览器网页上获取想要的信息。由于www内容丰富,浏览方便,也已经成为互联网重要要的服务。 那么超文本传输协议HTTP(Hypertext transfer protocol),是一种从www服务器传输超文本到本地浏览器的传送协议。简单地说,HTTP协议就是用户通过浏览器访问Web服务器的方式,并具备B/S(Browser/Server )结构。 今天就来与大家分享一下HTTP协议的学习。
HTTP协议承载于TCP协议之上,是一个应用层协议。有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。如下图所示:
HTTP协议永远都是客户端发起请求,服务器回送响应。HTTP协议是一个无状态的协议,不会记得“上一个请求是什么”。
一次HTTP操作称为一个事务,其工作过程可分为四步: 1)建立连接。只要单击某个超级链接,HTTP的工作开始。 2)客户端发送请求。请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。 3)服务器响应。其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。 4)连接断开。当服务器的响应信息显示到客户端的浏览器上,一次HTTP操作结束 那么,先来看一下建立连接的过程:
HTTP/1.0 每次请求都需要建立新的TCP连接,连接不能复用。HTTP/1.1 新的请求可以在上次请求建立的TCP连接之上发送,连接可以复用。 请求消息格式 请求消息格式如下所示: 请求行 通用信息头|请求头|实体头 CRLF(回车换行) 实体内容 其中“请求行”为:请求行 = 方法 [空格] 请求URI [空格] 版本号 [回车换行] 请求方法 HTTP的请求方法常用如下几种: 1、GET:对服务器资源的简单请求,从服务器上获取数据。 2、POST:向服务器传送数据,主要是向服务器提交表单数据,尤其是大批量的数据。 3、HEAD:类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头。 那么,相对应的响应过程也与连接过程类似:
响应消息格式 HTTP响应消息的格式如下所示: 状态行 通用信息头|响应头|实体头 CRLF 实体内容 其中:状态行 = 版本号 [空格] 状态码 [空格] 原因 [回车换行] HTTP的状态响应码 200段是成功,300段需要对请求做进一步的处理,400段表示客户端请求错误,500段是服务器的错误。 ① 客户方错误 100 继续:表示已收到请求的第一部分,正在等待其余部分。 101 交换协议:请求者已要求服务器切换协议,服务器已确认并准备切换。 ② 成功 200 OK:表示服务器提供了请求的网页。 201 已创建:请求成功并且服务器创建了新的资源。 202 接收:表示服务器提供了请求的网页。 203 非认证信息:服务器已成功处理了请求,但返回的信息可能来自另一来源。 204 无内容:服务器成功处理了请求,但没有返回任何内容。 205 重置内容:服务器没有返回任何内容。此响应要求请求者重置文档视图。 206 部分内容:服务器成功处理了部分 GET 请求。 ③ 重定向 300 多路选择:服务器可根据请求者选择一项操作,或提供操作列表供请求者选择。 301 永久转移:请求的网页已永久移动到新位置。 302 暂时转移:服务器目前从不同位置的网页响应请求,但申请人应当继续使用原有位置来响应以后的请求。 303 参见其它:请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。 304 未修改:自从上次请求后,请求的网页未修改过。 305 使用代理:请求者只能使用代理访问请求的网页。 307 临时重定向:服务器目前从不同位置的网页响应请求,但请求者应当继续使用原有位置来响应以后的请求。 ④ 客户方错误 400 错误请求:服务器不理解请求的语法。 401 未认证:此页要求授权。 402 需要付费。 403 禁止:服务器拒绝请求。 404 未找到:服务器找不到请求的网页。 405 方法不允许:禁用请求中指定的方法。 406 不接受:无法使用请求的内容特性响应请求的网页。 407 需要代理认证:此状态码与 401 类似,但指定请求者必须授权使用代理。 408 请求超时:服务器等候请求时发生超时。 409 冲突:服务器在完成请求时发生冲突。 410 已删除:请求的资源永久删除后,服务器返回此响应。 411 需要长度:服务器不接受不含有效内容长度标头字段的请求。 412 条件失败:服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。 413 请求实体太大:服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。 414 请求URI太长:请求的 URI(通常为网址)过长,服务器无法处理。 415 不支持媒体类型:请求的格式不受请求页面的支持。 416 请求范围不符合:如果页面无法提供请求的范围,则服务器会返回此状态码。 417 未满足期望值:服务器未满足”期望”请求标头字段的要求。 ⑤ 服务器错误 500 服务器内部错误:服务器遇到错误,无法完成请求。 501 未实现:服务器不具备完成请求的功能。 502 网关失败:服务器作为网关或代理,从上游服务器收到无效响应。 503 服务不可用:服务器目前无法使用(由于超载或停机维护)。 504 网关超时:服务器作为网关或代理,但是没有及时从上游服务器收到请求。 505 HTTP版本不支持:服务器不支持请求中所用的 HTTP 协议版本。
下面以WIN7为例通过HTTP协议搭建局域网客户端-服务器模型,让客户端去访问同一网段内的服务器,服务器已通过HTML语言制作简单的网页供客户端访问。 (1)打开控制面板——程序——程序和功能,点击左边的“打开或关闭windows功能”。 (2) 再选择其中的“Internet信息服务”,主要是“Web管理工具”、“万维网服务”FTP服务器。 (3)点击确定,等待安装。待安装完成后,再依次打开 控制面板——系统和安全——管理工具(或按Win+R键在运行窗口中输入“inetmgr”),发现有一个“Internet 信息服务(IIS)管理器”(如果以前没装IIS就没有这个工具)。打开它,依次找到“网站”,默认是有一个Default WebSite 站点的。 (4)接下来启动网站。点击Default Web Site,窗口右边有一个“启动”,点击它启动网站(有时网站默认是开启的,就不用了)。然后打开浏览器,在地址栏输入 localhost ,回车。这个时候如果出现如下的界面就表明成功了。 (5)当web服务器搭建成功后,我们下一步所要做的就是把我们开发的网站安装到Web服务器的目录中。一般情况下,当Web服务器安装完成后,会创建路径“%系统根目录%inetpub/wwwroot”,将我们开发的网站COPY到该路径下。即可实现本地访问该网站。 (6)设置防火墙,让局域网当其它计算机也能访问本地网站资源。具体方法:打开控制面板,选择“系统和安全”,点击“允许程序通过Windows防火墙”,在弹出的对话框中勾选“万维网服务HTTP”右侧的两个复选框,最后点击确定退出。 (7)在局域网中其它计算机上,打开浏览器,输入 “http://Web服务器的IP地址/”按回车键,就可以访问服务器上的资源”。 经过以上步骤的设置,局域网中的其它用户就可以通过浏览器访问你所共享的web资源了! 感谢阅读! 更多内容与我们交流: WIZnet中文官方网站:http://www.iwiznet.cn WIZnet企业官方微博:http://weibo.com/wiznet2012 |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
479个成员聚集在这个小组
加入小组5099 浏览 1 评论
12116 浏览 5 评论
3503 浏览 2 评论
2968 浏览 0 评论
12696 浏览 2 评论
w5500 作为tcp server,客户端异常发送【RST,ACK】断开连接问题
1600浏览 1评论
1085浏览 0评论
使用stm32,通过spi的dma 收发,运行多次读写以后w5500发送正常,接收卡死,高人帮忙看看
6295浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 19:27 , Processed in 0.556396 second(s), Total 55, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号