HTTP常见知识点
HTTP获取服务器资源步骤
浏览器从URL中解析出服务器的主机名
浏览器将服务器的主机名转换成服务器的IP地址
浏览器将端口号(如果有的话)从URL中解析出来
浏览器建立一条与web服务器的TCP连接
浏览器向服务器发送一条HTTP请求报文
服务器向浏览器回送一条HTTP响应报文
关闭连接,浏览器显示文档
状态码分类与常见状态码
状态码分类
整体范围 | 分类 |
---|---|
1** | 信息提示,请求已被接受,需要继续处理 |
2** | 成功,请求已成功被服务器接收、理解、接受 |
3** | 重定向,需要客户端采取进一步的操作 |
4** | 客户端错误 |
5** | 服务器错误 |
常见状态码
200——OK,请求成功
301——Moved Permanently,资源(网页等)被永久转移到其他URL
302——Found,307——Temporary Redirect,临时重定向,请求的文档被临时移动别处
304——Not Modified,未修改,表示客户端缓存的版本是最近的
401——Unauthorized,请求要求用户的身份认证
403——Forbidden,禁止,服务器理解客户端请求,但是拒绝处理此请求,通常是权设置所致
404——Not Found,请求的资源(网页等)不存在
500——Internal Server Error——内部服务器错误
502——Bad Gateway,充当网关或代理的服务器从远端服务器接收到了一个无效的请求
504——Gateway Time-out,充当网关或代理的服务器,未及时从远端服务器获取请求
网络分层模型
OSI七层模型
开放式系统互联网通信参考模型——OSI, Open System Interconnection
应用层(Application Layer)
为应用程序提供服务并管理应用程序之间的通信(SMTP, HTTP, FTP等)
表示层(Presentation Layer)
负责数据的格式转换、加密与解密、压缩与解压
会话层(Session Layer)
负责建立、管理和断开通信连接,实现数据同步
传输层(Transport Layer)
为数据提供可靠的或不可靠的端到端传输,同时处理传输错误,控制流量(TCP, UDP)
网络层(Network Layer)
负责地址管理,路由选择和拥塞控制(IP协议)
数据链路层(Data Link Layer)
将数据分割成帧,并负责MAC寻址、差错检验和信息纠正(以太网)
物理层(Physical Layer)
管理最基础的传送通道,建立物理连接,并提供物理链路所需的机械、电气、功能和过程设施
在OSI模型中,发送方从应用层到物理层依次传输,接收方从物理层到应用层一次接收
五层模型
应用层
支持网络应用,应用协议仅仅是网络应用的一个组成部分,运行在不同主机上的进程则使用应用层协议进行通信,主要的协议包括:HTTP、FTP、Telnet、SMTP、pop3等
传输层
负责为信源和信宿提供应用程序进程间的数据传输服务,这一层上主要定义了两个传输协议,传输控制协议TCP和用户数据报协议UDP
网络层
负责将数据报独立地从信源发送到信宿,主要解决路由选择、拥塞控制和网络互联等问题
数据链路层
负责将IP数据报封装成合适在物理网络上传输的帧格式并传输,或将从物理网络接收到的帧解封,取出IP数据报交给网络层
物理层
负责将比特流在结点间传输,即负责物理传输。该层的协议既与链路有关也与传输介质有关