1.HTTP 协议
HTTP 是超文本传输协议, 是一个基于请求与响应, 无状态的应用层协议
2.HTTPS 协议
HTTPS 是超文本传输安全协议
为什么 HTTPS 是安全的? 加密是用什么实现的
答: 因为它在 HTTP 协议上建立了 SSL 加密层, 对传输数据进行加密, HTTP 先与 SSL 通信, SSL 再与 TCP 通信. 有了 SSL 就会对信息加密, 身份验证以及完整性校验. SSL 的功能实现是基于散列函数, 对称加密和非对称加密.
3.HTTP 和 HTTPS 的区别
(1)HTTP 是明文传输, HTTPS 是密文传输
(2)HTTPS 一般需要到 CA 申请证书, 并且证书免费的比较少, 所以需要一定的费用
(3)HTTP 的端口是 80 端口, HTTPS 是 443
(4)HTTP 的连接很简单, 是无状态的. HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输, 身份认证的网络, 比 HTTP 协议安全
4. 应用层都有哪些协议
DNS: 域名解析协议 FTP: 文件传输协议 SMTP: 邮件传输协议
HTTP: 超文本传输协议 Telnet: 远程登录协议
5. 网页上输入一个 UR, 按下回车发生的事情
(1) 先使用 DNS 进行域名解析, 根据 URL 得到 IP 地址
(2) 客户端根据具体的 IP 地址, 找到具体的服务器
(3) 客户端与服务器端建立 TCP 连接
(4) 客户端向服务器端发送一个 http 请求
(5) 服务器端给客户端响应 html 文件
(6) 客户端解析 HTML 文件, 并请求文件中的资源
(7) 客户端对页面进行渲染, 关闭 TCP 连接
6. 常用状态码
100: 客户端继续发送请求给服务器
200: 请求成功
201: 客户端请求成功, 并且新的资源已经按照请求建立
300: 请求的资源有一系列的回馈信息
301: 永久重定向, 请求的资源已经永久移动到新的位置
302: 临时重定向, 请求的资源临时被移动到新的位置
400: 语义错误, 当前的请求服务器不能理解
403: 拒绝访问, 服务器理解了你的请求, 但是拒绝访问
404: 请求失败, 找不到客户端请求的资源
500: 服务器无法完成对请求的处理
7.Get 和 Post 的区别
(1)get 比 post 不安全, get 请求的数据放在 url 上, 而 post 的数据对用户是不可用的
(2)get 对数据有一定的长度限制, 因为数据是存放在 url 的, url 有一定的长度限制, 而 post 没有
(3)get 在浏览器回退时是没有影响的, 而 post 会再次提交请求
(4) 浏览器对 get 的请求会主动缓存, 而 post 不会
(5) 浏览器对 get 的请求参数会保存在浏览器的历史记录中, 而 post 不会
(6)get 对于表单的数据集只能是 ASCII 字符集, 而 post 支持所有字符集
(7)get 产生的 url 地址可以被收藏为书签, 而 post 不能
8. 代理服务器
代理网络用户去取得网络信息. 它是网络信息的中转站, 它负责转发合法的网络信息, 对转发进行控制和登记. 可用于多个目的, 最基本的功能是连接, 还包括安全性, 缓存, 访问控制管理等.
9. 跨域: 当一个请求的协议, 端口, 域名三者之间任意一个与当前页面 url 不同, 即为跨域
10.HTTP 常见 header
Content-type: 数据类型 Content-length: 请求体的长度
host: 告诉服务器, 所请求的资源在哪个主机上的哪个端口上
user-agent: 告诉服务器, 客户端的操作系统及浏览器信息
referer: 当前页面是从哪个页面跳转过来的
location: 告诉客户端接下来要去哪里访问
11. 公网 IP
互联网上的每一个计算机都有一个 IP 地址, 该地址唯一确定互联网上的一台计算机
12.HTTP1.0 HTTP1.1 HTTP2.0 的区别
http1.0 与 http1.1 的区别:
(1) 支持多连接, 一个 TCP 连接上可以处理多个 http 请求
(2) 节约宽带, http1.1 支持只发送 header 信息, 如果服务器认为客户端有权访问, 则返回 100, 客户端继续发送请求信息, 如果服务器认为客户端没有权限, 则不用再发送, 节约了宽带
(3) 缓存处理, http1.1 支持更多的缓存控制策略
(4)host 域
http1.1 与 http2.0 的区别:
(1) 多路复用, 同一个连接并发处理多个请求
(2) 头部数据压缩, 对 header 的数据压缩
(3) 服务器推送, 允许服务器端推送资源给客户端
13. 计算机网络每层的功能及协议
应用层: 负责应用程序之间的通信, 协议有 http,ftp,smtp,telnet
传输层: 负责数据的传输, 协议有 tcp,udp
网络层: 负责地址管理和路由选择, 协议有 ip,arp
数据链路层: 负责设备之间的数据帧的识别和传送
物理层: 负责光, 电信号的传递方式
来源: http://www.bubuko.com/infodetail-3507984.html