《http权威指南》读书笔记5

概述

最近对http很感兴趣,于是开始看《http权威指南》。别人都说这本书有点老了,而且内容太多。我个人觉得这本书写的太好了,非常长知识,让你知道关于http的很多概念,不仅告诉你怎么做,还告诉你为什么这么做。于是我把学到的知识点记录下来,供以后开发时参考,相信对其他人也有用。

web服务器

1.web服务器逻辑实现了http协议、管理着web资源,并负责提供web服务器的管理功能。web服务器逻辑和操作系统共同负责管理TCP连接。底层操作系统负责管理底层计算机系统的硬件细节,并提供了TCP/IP网络支持、负责装载web资源的文件系统以及控制当前计算活动的进程管理功能。

2.web服务器有各种不同的形式:

  • 通用软件web服务器
  • web服务器设备
  • 嵌入式web服务器

3.解析请求报文时,web服务器会:

  • 解析请求行,查找请求方法、指定的资源标识符以及版本号,各项之间由一个空格分隔,并以一个回车换行(CRLF)序列作为行的结束。
  • 读取以CRLF结尾的报文首部。
  • 检测到以CRLF结尾的、标识首部结束的空行。(如果有的话)
  • 如果有的话(长度由Content-Length首部指定),读取请求主体

4.不同的服务器结构:

  • 单线程web服务器:一次只处理一个请求,期间所有其他请求都会被忽略。
  • 多进程及多线程web服务器:会对线程/进程的最大数量进行限制。
  • 复用I/O的服务器:只有在有事情可做时才会对连接进行处理,在空闲连接上等待的时候并不会绑定线程和进程。
  • 复用的多线程web服务器:将多线程和复用功能结合。

5.动态内容资源的映射:web服务器还可以将URI映射为动态资源——也就是说,映射到按需动态生成内容的程序上去。

6.响应报文中通常包括:

  • 描述了响应主体MIME类型的Content-Type首部。
  • 描述了响应主体长度的Content-Length首部。
  • 实际报文的主体内容。

7.web服务器有时会返回重定向响应而不是成功的报文,重定向可用于下列情况:

  • 永久删除的资源。301
  • 临时删除的资源。302
  • URL增强。303或者307
  • 负载均衡。303或者307
  • 服务器关联。303或者307
  • 规范目录名称。给URI尾部加上斜线。

猜你喜欢

转载自www.cnblogs.com/yangzhou33/p/9231773.html