W
E
B
服
务
器
▶web服务器:Web内容都是存储在Web服务器上的,Web服务器所使用的是HTTP协议;
▶web客户端:客户端向服务器发送 HTTP 请求, 服务器会在 HTTP 响应中回送所请求的数据;
▶web资源:Web 服务器文件系统中的资源;
▶**MIME 类型:**Web 服务器会为所有 HTTP 对象数据附加一个 MIME 类型,当 Web浏览器从服务器中取回一个对象时,会去查看相关的 MIME 类型,看看它是否知道应该如何处理这个对象。这里举出了几个常见的HTTP对象以及他们的MIME类型;

如下图所示

HTML 格式的文本文档由 text/html 类型来标记
普通的 ASCII 文本文档由 text/plain 类型来标记
JPEG 格式的图片为 image/jpeg 类型
GIF 格式的图片为 image/gif 类型

image
URI:服务器资源名被称为统一资源标识符(Uniform Resource Identifier,URI)。
URL:URL是资源标识符最常见的形式,URL 描述了一台特定服务器上某资源的特定位置.现在,几乎所有的 URI 都是 URL。
URN: URI 的第二种形式就是统一资源名(URN),URN 是作为特定内容的唯一名称使用的,与目前的资源所在地无关。
HTTP方法:HTTP方法会告诉服务器要执行什么动作,以下是几个常见的方法。

状态码:每条 HTTP 响应报文返回时都会携带一个状态码。下面是几个常见的状态码。


详解URL

1. URI,URL,URN三者之间的关系
目前来看,网络中使用的基本上都是URL。
2. URL简单结构
http://www.joes-hardware.com/seasonal/index-fall.html为例:
第一部分:http。表示URL的方案,方案可以告知 Web 客户端怎样访问资源。不区分大小写
第二部分:www.joes-hardware.com。主机部分, 表示服务器的位置(如果知道域名与IP间的关系,会理解更好),这部分告知Web 客户端资源位于何处。
第三部分:/seasonal/index-fall.html。表示资源路径,路径说明了请求的是服务器上哪个特定的资源。
3. URL的详细语法

主机与端口
用户名和密码
ftp://ftp.prep.ai.mit.edu/pub/gnu
ftp://anonymous@ftp.prep.ai.mit.edu/pud/gnu
ftp://anonymous:my_passwd@ftp.prep.ai.mit.edu/pud/gnu
路径
参数
http://www.joes-hardware.com/hammers;sale=false/index.html;graphics=true
查询部分
http://www.joes-hardware.com/inventory-check.cgi?item=12731&color=blue
片段

详解HTTP报文

报文组成部分
HTTP报文包含三部分:

报文语法

1.HTTP 请求报文

1.1请求行
请求行也是请求报文的起始行,包含3个内容:请求方法,URL,协议版本。
请求方法:描述服务器应该执行的操作,如GET, PUT等方法
URL:即请求资源的地址
协议版本:即HTTP的版本。版本号说明了应用程序支持的最高 HTTP 版本。
想深入了解的小伙伴可以直达:HTTP协议的前世今生——各版本HTTP协议对比
注意:这些字段都由空格符分隔。一个简单的例子如下:
GET /source.jpg HTTP/1.1
请求方法略解

当然,最常用的还是GET,POST这两种方法,一般情况下,搞懂这两种方法足以应付大多情况了。
如果想深入了解一下这些方法,可以参见:HTTP方法
1.2 请求头部(请求首部)
因为请求首部是可以用户自定义的,比如你与网络打交道时就经常需要自己添加一些请求头部。所以,了解一些关于常用的请求头部是很有必要的。
1.3 请求实体(请求正文)
2. HTTP响应报文



状态行
200 OK //客户端请求成功
301 Moved Permanently //请求的对象已经永久转移了,新的URL定义在响应报文的Location:首部行中。
400 Bad Request //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //被请求的文档不在服务器上
500 Internal Server Error //服务器发生不可预期的错误
503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常
505 HTTP Version Not Supported //服务器不支持请求报文使用的HTTP协议版本
状态信息为状态码提供了文本形式的解释。状态信息和状态码是成对出现的。
河北镌远网络科技有限公司(Hebei JYCYBER TechnologyCo.,Ltd.)是一家集人才、技术和经验于一体的,提供全面网络安全解决方案的专业服务商。镌远科技致力于为各行业的网络安全需求提供软件研发和通用解决方案,业务领域主要包括基础服务、咨询业务、产品研发和安全培训四大版块,各版块相互独立又相辅相成,完美阐释了“专业服务、全程服务、延伸服务”的服务体系和“单一业务与长远目标相融合”的服务理念。
关注镌远科技,关注网络安全!
河北省邯郸市丛台区中华北大街193号慧谷大厦14层
总部地址:北京冠程科技有限公司
北京市昌平区科技园区东区产业基地企业墅上区一号楼九单元四层
实训基地:河北省石家庄市电子信息学校冠程科技研究与实训中心


欢迎扫描关注我们,及时了解更多关于网络安全相关知识


