知识点二:HTTP超文本文件传输协议

HTTP超文本传输协议概念

http1.1之前采用非持续链接服务器在建立连接上开销较大,http1.1之后默认采用持续连接,并有超时设置

http协议:超文本文件传输协议,用于传输文本文件,请求的方法:get、put(下载文档)、head、post(发送信息)、delete、optinos(询问关于可用的选项)、connect(保留)、trace(把到达的请求回送)

MIME: Multipurpose Internet Mail Extension, 多用途互联网邮件扩展,将非文本数据在传输前重新编码为文本格式,接收方能够用相反的方式将其重新还原为原来的格式,还能够调用相应的程序来打开此文件,该模块加速了互联网扩展

动态网页概念:服务器端存储的文档非HTML格式,而是编程语言开发的脚本,脚本接受参数之后在服务器运行一次,运行完成之后会生成HTML格式的文档,把生成的文档发给客户端;(web通过CGI通用网关接口调用脚本返回执行结果) 

http访问的请求报文:

1、请求行:请求的方法  请求的url  协议版本(以空格隔开)

2、首部行:对请求文档的一些附加信息(具体可参考RFC

3、请求报文实体:请求的一些备注信息 

WEB服务器的响应报文:

1、状态行:协议版本  状态码  状态短语(OK)

2、首部行:响应报文的一些附加信息

3、响应报文主体:服务器向客户端发送的一些文档

备注:通过抓包查看请求和响应报文更有利于理解

 

cookie的概念:

cookie是服务器制作的,和浏览器无关,使用和销毁都是是由服务器来决定(如梦初醒的感觉)

web缓存,代理服务概念:

在客户及服务器中间的一个代理服务器,扮演客户和服务器2中角色(ISP用代理服务器可以减少进出口带宽的流量,类似CDN)

http访问状态代码:
1xx: 纯信息
2xx: “成功”类的信息 (200, 201, 202)
3xx:重定向类的信息 (301, 302, 304)
4xx: 客户端错误类的信息 (404)
5xx:服务器端错误类的信息

Web服务器的主要操作

1、 建立连接——接受或拒绝客户端连接请求;
2、 接收请求——通过网络读取HTTP请求报文;
3、 处理请求——解析请求报文并做出相应的动作;
4、 访问资源——访问请求报文中相关的资源;
5、 构建响应——使用正确的首部生成HTTP响应报文;
6、 发送响应——向客户端发送生成的响应报文;
7、 记录日志——当已经完成的HTTP事务记录进日志文件;

原文地址:https://www.cnblogs.com/sxdpython/p/12582541.html