RHCE(一)http协议

1、HTTP协议概念

HTTP协议,全称为HyperText Transfer Protocol,中文名为超文本传输协议,是互联网中最常用的一种网络协议。HTTP的重要应用之一是WWW服务。设计HTTP协议最初的目的就是提供一种发布和接受HTML(一种页面标记语言)页面的方法。

WWW是环球信息网的缩写,常简称为Web。 分为Web客户端和Web服务器程序。WWW可以让Web客户端(常用浏览器)访问浏览Web服务器上的页面。 是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个事物,称为一样“资源“;并且由一个全局“统一资源标识符”(URI)标识;这些资源通过超文本传输协议,传送给用户,而后者通过点击链接来获得资源。
通常说的上网就是使用www来查询用户所需要的信息。www可以结合文字、图形、影像以及声音等多媒体,并通过可以让鼠标单击超链接的方式将信息以Internet传递到世界各处去。与其他服务器类似,当你连接上www网站,该网站肯定会提供一些数据,而你的客户端则必须要使用可以解析这些数据的软件来处理,那就是浏览器。

URL:Uniform Resource Locator,统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。

  • 浏览器常支持的协议有:http、https、等。
  • 主机地址或者主机名:主机地址就是服务器在因特网所在的IP地址。如果是主机名的话,那么就需要域名解析了。
  • 端口:http为80/8080。https为443。

2、HTTP协议运行原理

  1. Web浏览器使用HTTP命令向一个特定的服务器发出Web页面请求。
  2. 若该服务器在特定端口(通常是TCP 80端口)处接收到Web页面请求后,就发送一个应答并在客户和服务器之间建立连接(tcp连接)。
  3. 服务器Web查找客户端所需文档,若Web服务器查找到所请求的文档,就会将所请求的文档传送给Web浏览器。若该文档不存在,则服务器会发送一个相应的错误提示文档给客户端。
  4. Web浏览器接收到文档后,就将它显示出来。
  5. 当客户端浏览完成后,就断开与服务器的连接。

3、HTTP请求报文

一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。
在这里插入图片描述
1).请求行
请求行分为三个部分:请求方法、请求地址和协议版本

  • 请求方法有8种:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE。最常的两种GET和POST
  • 请求地址
    组成:<协议>://<主机>:<端口>/<路径>
  • 协议版本的格式为:HTTP/主版本号.次版本号,常用的有HTTP/1.0和HTTP/1.1

2).请求头部
请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔。

3).请求数据
可选部分,比如GET请求就没有请求数据。

4、HTTP响应报文

在这里插入图片描述
HTTP响应报文主要由状态行、响应头部、空行以及响应数据组成。

1).状态行
由3部分组成,分别为:协议版本,状态码,状态码描述。
其中协议版本与请求报文一致。
状态码为3位数字:

  • 1xx:指示信息–表示请求已接收,继续处理。
  • 2xx:成功–表示请求已被成功接收、理解、接受。
  • 3xx:重定向–要完成请求必须进行更进一步的操作。
  • 4xx:客户端错误–请求有语法错误或请求无法实现。
  • 5xx:服务器端错误–服务器未能实现合法的请求。

下面是几个常见的:
在这里插入图片描述
2).响应头部
与请求头部类似,为响应报文添加了一些附加信息

3).响应数据
用于存放需要返回给客户端的数据信息。

下面是一个请求报文和响应报文的例子:
在这里插入图片描述
分析:
客户端在浏览器输入链接,通过报文形式发送,
请求报文包括:
1、请求方法 get
2、请求地址 /test/hi-there.txt
3、 协议版本信息 HTTP/1.0
4、指定文件的类型 Accept: text/*
5、文件的语言标准格式 Accept-Language: en,fr
6、空白行

请求报文发过去后,服务端做响应,发送响应报文
响应报文包括 :
1、协议版本信息,服务端版本高与客户端版本,可以向下兼容,匹配 成功。但客户端高于服务端版本就不一定了
2、状态值 200 OK 是正常响应,如果是404就是请求资源不存在。
3、响应的资源文件类型 Content-type: text/plain
4、响应资源文件的长度 Content-length: 19
5、空白行
6、主体部分,即请求资源文件的内容信息 Hi! I’m a message!

发布了94 篇原创文章 · 获赞 92 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43624033/article/details/104946366
今日推荐