http协议
web服务器:提供网页访问的(Apache、Nginx、node.js写一个服务器)
数据库服务器: 一种专门对表文件进行调用和操作的服务器
http协议: 超文本传输协议(Hyper Text Transfer Protocol)
请求
完整的请求过程(打电话)
第一步,客户端和服务器之间建立连接 (把电话打通)
第二步:客户端发起请求 (打电话的人告诉接电话的我有事找你)
第三步:服务器端响应请求 (接电话的人给打电话的人一个回复)
第四步:断开连接 (事说完了,挂电话)
请求行(浏览器地址栏里面的地址):https://www.baidu.com/
请求资源地址(url): 多个(浏览器地址栏里面输入地址发起请求会触发多次资源请求)
请求方式:get post put delete…
请求状态:200 请求成功
404 403…,400系列的错误几乎都是前端的错误(如果后端没有响应内容,那么也会报400系列的错)
500 后端服务器的错
response header:响应头
Content-type: 告诉客户端响应了什么内容
Keep-Alive: timeout= ,max= 请求时间限制和请求资源的数量限制
Last-modified: 资源的最后修改时间
request header: 请求头
Accept:接受的格式
Accept-Encoding:接收的编码
Accept-Language:接收语言
Connection:keep-alive 保持活动状态,让服务器保持活跃状态,然后好连接请求内容
Referer: 从 哪里来
User-agent:客户端的系统信息
Upgrade-Insecure-Requests: 1:不安全的请求
状态码
HTTP状态码大致分为5类:
1xx : 消息,表示请求已被接受,需要继续处理。一般服务器禁止向客户端发送此类状态码;
2xx : 成功,表示请求已成功被服务器接收;
3xx : 重定向,表示需要客户端采取进一步的操作才能完成请求;
4xx : 请求错误,表示客户端可能发生了错误,妨碍了服务器的处理;
5xx : 服务器错误,表示服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。
例
200:请求被正常处理
204:请求被受理但没有资源可以返回
206:客户端只是请求资源的一部分,服务器只对请求的部分资源执行GET方法,相应报文中通过Content-Range指定范围的资源。
301:永久性重定向
302:临时重定向
303:与302状态码有相似功能,只是它希望客户端在请求一个URI的时候,能通过GET方法重定向到另一个URI上
304:发送附带条件的请求时,条件不满足时返回,与重定向无关
307:临时重定向,与302类似,只是强制要求使用POST方法
400:请求报文语法有误,服务器无法识别
401:请求需要认证
403:请求的对应资源禁止被访问
404:服务器无法找到对应资源
500:服务器内部错误
503:服务器正忙