目录
1. HTTP协议的介绍:
2. HTTP工作原理:
3.HTTP三点注意事项:
4.HTTP请求和响应的格式:
5.HTTPS协议的简单介绍:
6.HTTPS的作用:
7.HTTS方式与Web服务器通信的步骤:
8.HTTP与HTTPS的区别:
9.HTTPS的缺点:
H TTP 协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输文本到本地浏览器的传送协议。HTTP是基于TCP/IP通信协议来传送数据。
(1)HTTP是面向连接的,但是它本身是无连接的:面向连接的意思是,HTTP协议是基于TCP/IP协议来传送数据,它本身是无连接指的是HTTP限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接,采用这种方式可以节省传输时间。
(2) HTTP是无状态的:HTTP协议是无状态协议。无状态指的是协议对于事物处理没有记忆能力。缺少状态意味着如果后续处理前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大 。
(3)HTTP是媒体独立的:即只要客户端和服务器知道如何处理数据内容,并且任何类型的数据都可以通过HTTP发送。
(1)HTTP协议的请求包括【请求行、请求报头、空行、正文】
其中请求报头有一些常用的字段:
a) Content-Type:正文的数据类型
b) Content-Length:正文的长度
c) Host:客户端告知服务器,所有的资源是在哪个主机的哪个端口上;
d) User-Agent:声明用户的操作系统和浏览器版本信息
e) Referer:当前页面是从哪个页面跳转过来的;
f) Location:搭配3xx状态码使用,告诉客户端接下来要去哪里访问;
g) Cookie: 用于在客户端存储少量信息。
(2)HTTP协议的8种请求介绍:
a) GET:向特定的资源发出请求。
b) POST:向指定资源提交数据进行处理请求(例如提交表单或上传文件),数据被包含在请求体中。Post请求可能会导致新的资源的创建或已有的资源的修改。
c) OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法。
d)HEAD:向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以不必传输整个响应内容的情况下,就可以获取包含在响应报头中的元信息。
e) PUT:向指定资源位置上传最新的内容。
f)DELETE:请求服务器删除Request-URL所识的资源
g) TRACE: 回显服务器收到的请求,主要用于测试或诊断。
h) CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
在以上的请求方式中,最长用的是GET和POST方法。
(3)HTTP响应的格式【包括 状态行、响应包头、空行、响应正文】:
(4)HTTP常见的状态码:
HTTPS:安全套接字层超文本传输协议,HTTPS协议在HTTP的基础上加入了SSL/TLS协议。SSL/TLS协议是依靠证书来验证服务器的身份并未浏览器和服务器之间的通信加密,相较于HTTP更安全。
(1)建立一个信息安全通道,来保证数据传输的安全;
(2)确认网站的真实性;
(1)客户端使用HTTPS的URL访问Web服务器,请求与服务器之间建立SSL连接;
(2)Web服务器收到客户端请求后,会将网站的证书信息(证书包含公钥)传送给客户端;
(3)客户端的浏览器与Web服务器开始协商SSL连接的安全等级,即就是信息加密的等级;
(4)客户端的浏览器根据双发同意的安全等级建立会话密钥,然后利用网站的公钥将会话密钥加密,并发送给网站;
(5)Web服务器利用会话密钥加密与客户端之间通信;
(1)HTTPS协议需要到CA申请证书,一般免费证书比较少,因此需要一定的费用;
(2)HTTP是超文本传输协议,信息是明文传输,HTTPS是具有安全性的SSL/TSL加密传输协议;
(3)HTTP的默认端口号是80,HTTPS默认的端口号是443;
(4)HTTP的连接方式是无状态的,HTTPS协议是由SSL/TSL+HTTP协议构成的,可进行加密传输。
(1)HTTPS协议握手阶段比较费时,会使页面的加载时间延长,增加电量的消耗;
(2)SSL证书需要钱,功能越强大的证书费用越高;
(3)HTTPS连接缓存不如HTTP高效,会增加数据开销和功耗,甚至已有的安全措施也会因此受到影响;
(4)SSL证书通常需要和IP绑定,不能在同一IP是上绑定多个域名;
(5)HTTPS协议 的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到作用,而且SSL的信用链接体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。