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事务记录进日志文件;

最新文章

  1. LeetCode#11. Container With Most Water
  2. pgm revert转换 成jpg 人脸识别图片
  3. Css 学习——left与offsetLeft的区别
  4. stripslashes — 反引用一个引用字符串
  5. ORA-16179: incremental changes to "log_archive_dest_1" not allowed with SPFILE
  6. Java抓取网页数据
  7. DTD - Attributes
  8. Java单例模式深入详解
  9. XMPP通讯开发-服务器好友获取以及监听状态变化
  10. grep 基于关键字搜索
  11. docker应用笔记
  12. HDU 1060 Leftmost Digit 基础数论
  13. BOM 浏览器对象模型_Storage 接口 - window.sessionStorage - window.localStorage
  14. 最简单的基于FFmpeg的AVfilter样例(水印叠加)
  15. Python+OpenCV图像处理(九)—— 模板匹配
  16. python协程的使用
  17. 【学习笔记】---老男孩学Python,day1
  18. 学习Spring Boot:(十七)Spring Boot 中使用 Redis
  19. django model 条件过滤 queryset.filter(**condtions) 用法
  20. [翻译]第一天 - 在 Windows 下安装和运行 .NET Core

热门文章

  1. abp(net core)+easyui+efcore实现仓储管理系统——入库管理之六(四十二)
  2. Python中保留两位小数的几种方法
  3. word加上尾注之后参考文献下面的横线去除
  4. TensorFlow v2.0实现Word2Vec算法
  5. 使用Keras进行深度学习:(七)GRU讲解及实践
  6. FileReader 和Blob File文件对象(附formData初始化方法);
  7. [codevs2370]小机房的树<LCA>
  8. TCP漫谈之keepalive和time_wait
  9. SringBoot整合velocity及常用语法
  10. [斯坦福大学2014机器学习教程笔记]第五章-控制语句:for,while,if语句