http协议详解

HTTP是什么?

HTTP 是一种用作获取诸如 HTML 文档这类资源的协议。它是 Web 上进行任何数据交换的基础,同时,也是一种客户端—服务器(client-server)协议,也就是说,请求是由接受方——通常是浏览器——发起的。一个完整网页文档是由获取到的不同文档组件——像是文本、布局描述、图片、视频、脚本等——重新构建出来的。

HTTP是web网页的常用协议,它在七层协议的应用层。用于客户端和web服务器的数据交换、通信和信息交换。

HTTP的中间件服务器

http协议详解_第1张图片

Tomcat、Nginx和Apache都是HTTP常见的中间件服务器,HTTP服务器本质上也是一种应用程序,它通过监听TCP端口,然后客户端根据HTTP协议获取服务器上的文件、图像等。

静态网页和动态网页

静态网页:

(1)静态网页不能简单地理解成静止不动的网页,他主要指的是网页中没有程序代码,只有HTML(即:超文本标记语言),一般后缀为.html,.htm,或者.xml等。虽然静态网页的页面一旦做成,内容就不会再改变了。但是,静态网页也包括一些能动的部分,这些主要是一些GIF动画等

(2)静态网页的打开,用户可以直接双击,并且不管任何人任何时间打开的页面的内容都是不变的。

动态网页:

(1)动态网页是指跟静态网页相对的一种网页编程技术。动态网页的网页文件中除了HTML标记以外,还包括一些特定功能的程序代码,这些代码可以使得浏览器和服务器可以交互,所以服务器端根据客户的不同请求动态的生成网页内容。

(2)动态网页,与网页上的各种动画、滚动字幕等视觉上的动态效果没有直接关系,动态网页也可以是纯文字内容的,也可以是包含各种动画的内容,这些只是网页具体内容的表现形式,无论网页是否具有动态效果,只要是采用了动态网站技术(如PHP、ASP、JSP等)生成的网页都可以称为动态网页。

静态网页的后端没有代码参与,它与数据库不能进行交互,静态网页并不能理解为静止的网页,静态网页和动态网页是根据代码和交互性来划分的。动态网页的后端有特定的代码参与,它可以和数据库进行交互。

URL

统⼀资源定位符(网址,全球唯⼀),用来告诉Web 服务器,浏览器所请求资源(文件)的路径(URI)。

http://127.0.0.1/pikachu-master/vul/burteforce/bf_form.php

URL由两个主要的部分构成:协议(Protocol)和目的地(Destination)。

协议”是告诉我们自己面对的是何种类型的Internet资源。

web中最常见的协议是http,它表示从Web中取回的是HTML文档。其他协议还有gopher,ftp和telnet等。

**“目的地“**可以是某个文件名、目录名或者某台计算机的名称。

URL即网址,它是一个网页的资源定位符,表示了网络资源的所在位置和访问方法(这个方法与编程语言中的方法无任何关系,如get和post就是两种请求方法),具有唯一性。

HTTP报文

请求报文

HTTP 请求报文由请求行、请求头、请求正文三个部分组成。

请求行:HTTP 报文的第⼀行,由空格字符分成三部分

GET /pikachu-master/vul/burteforce/bf_form.php HTTP/1.1

请求方法:GET (请求方法有两种,GET和POST)

资源路径: /pikachu-master/vul/burteforce/bf_form.php

协议/版本:HTTP/1.1

请求头字段:

字段 含义
Host 主要用于指定被请求资源的服务器地址和端口号
User-Agent 用户客户端的浏览器信息,相当于浏览器指纹
Referer 包含一个URL,代表当前URL的上一个URL
Cookie 记录请求者的身份认证信息
Accept-Charset 用于指定浏览器接收的字符集
Content-Type 用于向接收方 (浏览器或服务器) 指示实体的介质类型 (数据类型,MIME)
Content-Length 用于指明实体正文的长度,以字节方式存储的十进制数字来表示
Last-Modified 用于指示资源的最后修改时间

响应报文

响应报文由状态行、响应报头、响应正文三部分组成

状态行:响应报文的第⼀行,

HTTP/1.1 200 OK

协议/版本:HTTP/1.1

响应状态码:200

描述短语:OK

响应报头:响应报文第二行开始到第⼀个空行为止的所有内容,其中包含了关于HTTP响应的重要字段。

响应报文:响应报文从第⼀个空行开始到最后的所有内容。 服务器返回资源的内容,即浏览器接 收到的HTML 代码

响应头字段:

字段 含义
Data 时间和日期
Server Web 服务器指纹
Last-Modified 服务器通过这个头信息告诉浏览器,资源的最后修改时间
Content-Length 响应正文的长度
Content-Type 响应正文的类型
Set-Cookie cookie头,向浏览器端写入Cookie配置 信息
Location 重定向目标页面
Refresh 服务器通过Refresh头告诉浏览器定时刷新浏览器

响应状态码:

状态码 类型
1XX 信息性状态码
2XX 成功状态码
3XX 重定向状态码
4XX 客户端错误状态码
5XX 服务器错误状态码

403表示客户端没有访问该页面的权限;404表示所访问的页面不存在,即客户端请求错误

你可能感兴趣的:(网络安全,http,网络协议,网络)