http协议和https协议

参考:

  1. https到底安全在哪里?
  • https到底安全在哪里?
  1. https协议端口号:443
  2. https实现原理:对称加密和非对称加密
  3. https通信过程:

http协议和https协议

  • http协议:Hyper Text Transfer Protocol(超文本传输协议)
  1. http是基于 TCP/IP 协议的应用层协议
  2. http协议传输的数据都是未加密的,也就是明文的
  3. http协议端口号:80
  4. http协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。
  5. http协议请求响应模型:http协议永远都是客户端发起请求,服务器回送响应,如下

http协议和https协议

 

  • http原理
  1. 参考:(关于HTTP协议,一篇就够了)https://www.cnblogs.com/ranyonsue/p/5984001.html

http协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。

http请求/响应的步骤:

  1. 客户端连接到Web服务器:一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。例如,http://www.oakcms.cn。
  2. 发送HTTP请求:通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
  3. 服务器接受请求并返回HTTP响应:Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
  4. 释放连接TCP连接:若connection 模式为close,则服务器主动关闭TCP连接,客户端被动关闭连接,释放TCP连接;若connection 模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求;
  5. 客户端浏览器解析HTML内容:客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。
  • 常见的http请求方法
  1. 参考:http://blog.51cto.com/12805107/2067971

http协议和https协议

  • http协议状态码
  1. 参考:http://blog.51cto.com/12805107/2067971
  2. HTTP状态码(HTTP Status Code)是用来表示Web服务器响应http请求状态的数字代码

http协议和https协议

 http协议和https协议

  • 会话跟踪技术

​​​​​​​由于http协议本身是无状态的,服务器为了区分不同的用户,就需要对用户会话进行跟踪,简单的说就是为用户进行登记,为用户分配唯一的ID,下一次用户在请求中包含此ID,服务器据此判断到底是哪一个用户。

  1. 使用cookie
  2. 使用session
  3. html5中webStorage技术:localStorage和sessionStorage
  4. url中添加参数
  5. 表单使用隐藏域
  • TCP/IP协议
  1. (4层:网络接口层,互联网层,传输层,应用层),针对因特网的通讯协议
  • URL和URI的区别
  1. url:是统一资源定位符(是个地址,可以访问到,也是一种URI)
  2. uri:是统一资源标识符(只是一个名称)
  • 从浏览器地址栏输入url到显示页面的步骤​​​​​​​
  1. 浏览器根据请求的URL交给DNS进行域名解析,找到真实的IP地址,通过创建TCP链接,向服务器发送请求
  2. 服务器交给后台处理后返回数据,浏览器接收文件(html css Js 图像等)
  3. 浏览器对加载到的资源(html css Js 图像等)进行语法解析,建立相应的内部数据结构(如HTML的DOM结构)
  4. 载入解析到的资源文件,页面渲染,完成​​​​​​​