首页 > 编程知识 正文

安全超文本传输协议,超文本传输协议简称

时间:2023-05-05 08:59:17 阅读:255419 作者:3114

一、 概念

HTTP协议定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器。从层次的角度看,HTTP是面向事务的(Transaction-oriented)应用层协议,它规定了在浏览器和服务器之间的请求和响应的格式和规则,它是万维网上能够可靠交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础。

二、HTTP的操作过程

从协议执行过程来说,浏览器要访问WWW服务器时,首先要完成对WWW服务器的域名解析。一旦获得了服务器的IP地址,浏览器将通过TCP向服务器发送连接建立请求。

万维网的大致工作过程如下图所示:

每个万维网站点都有一个服务器进程,它不断地监听TCP的端口80(默认),当监听到连接请求后便与浏览器建立连接。TCP连接建立后,浏览器就向服务器发送请求获取某一Web页面的HTTP请求。服务器收到HTTP请求后,将构建所请求的Web页必需的信息,并通过HTTP响应返回给浏览器。浏览器再将信息进行解释,然后将Web页显示给用户。最后,TCP连接释放。

在浏览器和服务器之间的请求和响应的交互,必须按照规定的格式和遵循一定的规则,这些格式和规则就是HTTP。因此HTTP有两类报文:

请求报文:从Web客户端向Web服务器发送服务请求;响应报文:从Web服务器对Web客户端请求的回答;

当用户点击鼠标后所发生的时间顺序如下(以访问清华大学为例):

浏览器分析链接指向页面的URL(http://www.tsinghua.edu.cn/publish/thu2018/index.html);浏览器向DNS请求解析www.tsinghua.edu.cn的IP地址;域名系统DNS解析出清华大学服务器的IP地址;浏览器与该服务器建立TCP连接(默认端口号80);浏览器发出HTTP请求:GET /publish/thu2018/index.html服务器通过HTTP响应把文件 index.html 发送给浏览器;TCP连接释放;浏览器将文件 index.html 进行解释,并将Web页显示给用户; 三、协议特点 (1)HTTP协议是无状态的同一个客户第二次访问同一个服务器上的页面时,服务器的响应与第一次被访问时的相同。因为服务器并不记得曾经访问过的这个客户,也不记得为该客户曾经服务过多少次。(2)HTTP采用TCP作为运输层协议,保证了数据的可靠传输HTTP不必考虑数据在传输过程中被丢弃后又怎样被重传。(3)HTTP协议是无连接的虽然HTTP使用了TCP连接,但通信的双方在交换HTTP报文之前不需要先建立HTTP连接。(4)HTTP既可以使用非持久连接,也可以使用持久连接(HTTP/1.1支持) 四、HTTP的报文结构

HTTP是面向文本的(Text-Oriented),因此在报文中的每个字段都是一些ASCII码串,并且每个字段的长度都是不确定的。有两类HTTP报文:

请求报文:从客户向服务器发送的请求报文

HTTP请求通用格式

请求行:第1行,方法字段,URL字段,版本字段首部行:一般多行实体主体:可为空

响应报文:从服务器到客户的回答

HTTP响应通用格式

状态行:第1行,版本字段,状态码字段,短语字段首部行:一般多行实体主体:报文的主体

HTTP请求报文中常用的几个方法

GET:最常用,请求访问网页,实体主体为空POST:常用,提交表单同时请求访问网页,如使用搜索引擎,实体主体中为表单输入值HEAD:少用,测试用,与GET区别在于响应中去掉请求的对象CONNECT:少用用于代理服务器PUT:很少用,向URL字段中定义的路径,上载在实体主体中文件DELETE:很少用,删除在URL字段中定义的文件

HTTP中的状态码

1xx:(100-101)指示信息--表示请求已接收,继续处理;2xx:(200-206)成功--表示请求已被成功接收、理解、接受;3xx:(300-305)重定向--要完成请求必须进行更进一步的操作;4xx:(400-415)客户端错误--请求有语法错误或请求无法实现;5xx:(500-505)服务器端错误--服务器未能实现合法的请求; 五、HTTP与HTTPS的区别

HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)(安全套接字层)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

HTTPS和HTTP的区别主要如下

安全性:http是超文本传输协议,信息是明文传输,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。https需要申请证书:https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。端口不同:用的端口不一样,http使用的是80端口,https使用的是443。所在层次不同:HTTP 协议运行在TCP 之上,HTTPS 是运行在SSL/TLS 之上的HTTP 协议,SSL/TLS(安全传输层协议) 运行在TCP 之上。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。