Apache源代码全景分析第二卷——体系结构和核心模块 目录

目前Apache源代码全景分析第二卷——体系结构和核心模块已经算是基本完成了,只剩余少量后续工作,现在把第二卷的目录先放出来。书上市的时间估计是 明年三月中旬。

1 Web服务器概述.. 1<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1.1 WWW概述.. 2

<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.1.1</span></span></chsdate> Internet概述.. 2

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.1.2</span></span></chsdate> 超文本的概念.. 3

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.1.3</span></span></chsdate> WWW的历史.. 4

1.2 HTTP服务器.. 8

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-hansi-font-family: Verdana; mso-no-proof: yes">1.2.1</span></span></chsdate> HTTP服务器简介.. 8

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.2.2</span></span></chsdate> HTTP服务器功能.. 9

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.2.2</span></span></chsdate> WWW文档.. 12

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.2.3</span></span></chsdate> 工作方式.. 14

1.3 Apache功能.. 17

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.3.1</span></span></chsdate> 虚拟主机.. 18

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-hansi-font-family: Verdana; mso-no-proof: yes">1.3.2</span></span></chsdate> 内容协商.. 18

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.3.3</span></span></chsdate> 持续连接.. 19

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.3.4</span></span></chsdate> 缓存.. 20

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.3.5</span></span></chsdate> 访问控制和安全.. 22

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">1.3.6</span></span></chsdate> 动态内容生成.. 24

1.4 HTTP报文.. 25

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-hansi-font-family: Verdana; mso-no-proof: yes">1.4.1</span></span></chsdate> HTTP协议数据流程.. 25

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-hansi-font-family: Verdana; mso-no-proof: yes">1.4.2</span></span></chsdate> HTTP传输报文.. 26

2 Apache编译和安装.. 1

2.1 亲手编译能带来的好处.. 2

2.2 预备工作.. 3

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.2.1<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache 2.0发布模型.. 3

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.2.2</span></span></chsdate> CVS下载源代码.. 4

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.2.3</span></span></chsdate> 源代码校验.. 5

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.2.3</span></span></chsdate> 解压缩.. 7

2.3 Window平台下的源代码编译.. 7

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.3.1</span></span></chsdate> 资源要求.. 7

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.3.2</span></span></chsdate> 命令行编译.. 9

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.3.3</span></span></chsdate> Developer Studio集成开发环境的工作区编译.. 10

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.3.4</span></span></chsdate> 项目组件.. 11

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.3.5</span></span></chsdate> 关于从开发树编译Apache的警告.. 12

2.4 Linux/Unix平台下的源代码编译.. 13

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.1</span></span></chsdate> 编译的资源要求.. 13

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.2</span></span></chsdate> 默认设置安装.. 14

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.3</span></span></chsdate> 配置选项概述.. 15

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.4</span></span></chsdate> 通用配置选项.. 16

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.5</span></span></chsdate> 代码树安装目录设置.. 17

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.6</span></span></chsdate> 默认服务器端口、用户以及组设置.. 18

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.7</span></span></chsdate> 模块配置.. 18

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.8<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache文件布局.. 29

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.9</span></span></chsdate> 跨平台编译支持.. 37

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.10</span></span></chsdate> 编译环境设置.. 40

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">2.4.11</span></span></chsdate> 使用apxs编译Apache模块.. 41

3 Apache体系结构.. 36

3.1 Apache目录.. 37

3.2 Apache层次结构.. 39

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.1</span></span></chsdate> 操作系统支持层.. 40

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.2</span></span></chsdate> 可移植运行层.. 40

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.3</span></span></chsdate> 核心功能层.. 41

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.4</span></span></chsdate> 可选功能层.. 42

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.5</span></span></chsdate> 第三方支持库.. 43

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.2.6<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache工具包.. 43

3.3 Apache核心功能层.. 43

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.3.1</span></span></chsdate> 核心与可选模块的关系.. 43

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.3.2</span></span></chsdate> 核心组件.. 44

3.4 Apache运行流程.. 48

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.4.1<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache启动过程.. 50

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.4.2</span></span></chsdate> HTTP连接处理.. 50

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.4.3</span></span></chsdate> 请求报文读取.. 51

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.4.4</span></span></chsdate> 请求处理.. 51

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.4.5</span></span></chsdate> 内容生成.. 53

3.5 主程序Main. 54

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.5.1</span></span></chsdate> 主程序概要.. 54

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">3.5.2</span></span></chsdate> 主程序细节.. 55

4 配置文件管理.. 62

4.1 Apache配置系统.. 63

4.2 配置文件.. 63

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.2.1</span></span></chsdate> 配置文件类.. 63

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.2.2</span></span></chsdate> 配置文件处理时机.. 65

4.3 指令相关概念.. 68

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.3.1</span></span></chsdate> 指令概述.. 68

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.3.2</span></span></chsdate> 指令参数.. 69

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.3.3</span></span></chsdate> 指令上下文.. 71

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.3.4</span></span></chsdate> 指令参数类型.. 84

4.4 指令配置.. 87

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.1</span></span></chsdate> 指令结构.. 87

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.2</span></span></chsdate> 指令定义.. 88

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.3</span></span></chsdate> 预定义指令函数.. 90

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.4</span></span></chsdate> 指令表.. 91

4.5 Apache配置处理.. 91

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.5.1</span></span></chsdate> 指令保存.. 92

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.2</span></span></chsdate> 指令读取.. 93

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.3</span></span></chsdate> 配置指令处理.. 109

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.4.4</span></span></chsdate> 特殊指令.. 123

4.6 .htaccess处理.. 126

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.6.1</span></span></chsdate> .htaccess使用场合.. 126

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.6.2</span></span></chsdate> 指令的覆盖.. 127

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">4.6.3</span></span></chsdate> 处理.htaccess. 128

4.7 实现自己的配置段.. 131

5 Apache模块化体系结构.. 130

5.1 Apache模块概述.. 131

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.1.1<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache模块组成.. 131

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.1.2<span style="mso-spacerun: yes"> </span>A</span></span></chsdate>pache核心与模块交互.. 132

5.2 Apache模块结构.. 134

5.3 模块的加载.. 139

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.3.1</span></span></chsdate> 模块变量.. 139

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.3.2</span></span></chsdate> DSODynamic Shared Object,动态共享对象)的概念.. 141

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.3.3</span></span></chsdate> 静态模块加载.. 144

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.3.4</span></span></chsdate> 动态模块加载.. 148

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.3.5</span></span></chsdate> 模块卸载.. 153

5.4 指令表.. 154

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.4.1</span></span></chsdate> 指令表概述.. 154

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.4.2</span></span></chsdate> 指令处理函数.. 156

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.4.3</span></span></chsdate> 指令共享.. 159

5.5 挂钩(HOOK) 162

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.1</span></span></chsdate> 为什么引入挂钩.. 162

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.2</span></span></chsdate> 声明挂钩.. 167

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.3</span></span></chsdate> 挂钩数组声明(APR_HOOK_LINK) 170

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.4</span></span></chsdate> 挂钩结构(APR_HOOK_STRUCT) 171

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.5</span></span></chsdate> 挂钩函数注册(APR_IMPLEMENT_EXTERNAL_HOOK_BASE) 173

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.6</span></span></chsdate> 使用挂钩.. 174

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.7</span></span></chsdate> 挂钩排序.. 177

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.8</span></span></chsdate> 可选挂钩.. 189

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.9</span></span></chsdate> 可选函数.. 193

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes"><font face="Verdana">5.5.10</font></span></span></chsdate>挂钩纵览.. 195

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.5.11</span></span></chsdate> 自己编写挂钩.. 203

5.6 模块与配置文件.. 204

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.6.1</span></span></chsdate> 概述.. 204

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.6.2</span></span></chsdate> 如何描述配置信息.. 206

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.6.3</span></span></chsdate> 目录相关配置(Per-Directory Config.. 207

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.6.4</span></span></chsdate> 针对服务器的配置(Per-Server Config) 210

5.7 配置存储和使用.. 211

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.1</span></span></chsdate> 配置向量.. 211

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.2</span></span></chsdate> 配置存储体系结构.. 212

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.3</span></span></chsdate> 虚拟主机配置存储.. 214

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.4</span></span></chsdate> 目录配置存储.. 215

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.5</span></span></chsdate> Location配置存储.. 216

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.6</span></span></chsdate> 文件配置存储.. 217

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.7.7</span></span></chsdate> 总体存储示意.. 218

5.8 常用模块.. 220

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.1</span></span></chsdate> 缓存模块.. 220

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.2</span></span></chsdate> URL映射模块.. 221

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.3</span></span></chsdate> 内容生成模块.. 222

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.4</span></span></chsdate> 安全模块.. 224

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.5</span></span></chsdate> 代理模块.. 226

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">5.8.6</span></span></chsdate> 其余模块.. 227

6 Apache核心模块CORE. 229

6.1 核心模块结构.. 230

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.1.1</span></span></chsdate> 核心模块.. 230

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.1.2</span></span></chsdate> 指令表.. 230

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.1.3</span></span></chsdate> 服务器相关配置.. 237

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.1.4</span></span></chsdate> 目录配置结构.. 240

6.2 配置段处理.. 251

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.2.1</span></span></chsdate> VirtualHost配置段.. 251

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.2.2</span></span></chsdate> 目录配置段.. 254

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.2.3</span></span></chsdate> URL配置段处理.. 260

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.2.4</span></span></chsdate> 文件配置段处理.. 260

6.3 挂钩处理.. 260

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">6.3.1</span></span></chsdate> translate_name挂钩.. 260

7 多任务并发处理.. 263

7.1 多进程并发处理概述.. 264

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.1.1</span></span></chsdate> 概述.. 264

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.1.2</span></span></chsdate> MPMApache中的位置.. 265

7.2 MPM数据结构.. 268

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes"><font face="Verdana">7.2.1</font></span></span></chsdate>记分板.. 268

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.2.2</span></span></chsdate> 终止管道(Pipe of Death) 281

7.3 Inetd:通用的多任务处理结构.. 284

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.3.1</span></span></chsdate> 服务器程序概述.. 284

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.3.2</span></span></chsdate> INETD. 286

7.4 预创建(Prefork)MPM分析.. 286

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.4.1</span></span></chsdate> Leader/Follow模式.. 286

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.4.2<span style="mso-spacerun: yes"> </span>P</span></span></chsdate>refork MPM概述.. 288

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.4.3<span style="mso-spacerun: yes"> </span>P</span></span></chsdate>refork MPM实现.. 290

7.5 工作者(Worker)MPM分析.. 330

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.5.1</span></span></chsdate> Worker MPM概述.. 330

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.5.2</span></span></chsdate> Worker主进程.. 335

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.5.3</span></span></chsdate> 子进程管理.. 345

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.5.4</span></span></chsdate> 线程管理.. 351

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.5.5</span></span></chsdate> 信号处理.. 365

7.6 WinNT MPM分析.. 367

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.1</span></span></chsdate> WinNT MPM概述.. 367

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.2</span></span></chsdate> WinNT MPM主程序.. 369

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.3</span></span></chsdate> 监控主进程.. 370

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.4</span></span></chsdate> 工作进程.. 374

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.5</span></span></chsdate> 线程处理.. 381

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">7.6.6</span></span></chsdate> 进程间通信.. 401

7.7 Event MPM分析.. 406

8 网络连接.. 409

8.1 网络连接概述.. 410

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.1.1</span></span></chsdate> 网络连接上下文环境.. 410

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.1.2</span></span></chsdate> 等待连接.. 411

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.1.3</span></span></chsdate> 接受连接.. 411

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.1.4</span></span></chsdate> 创建连接.. 411

8.2 连接数据结构.. 411

8.3 等待连接.. 414

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.3.1</span></span></chsdate> 概述.. 414

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.3.2</span></span></chsdate> 套接字创建.. 415

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.3.3</span></span></chsdate> 套接字侦听.. 419

8.4 连接处理.. 425

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.4.1</span></span></chsdate> 连接处理概述.. 425

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.4.2</span></span></chsdate> 创建连接.. 426

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.4.3</span></span></chsdate> 连接处理.. 429

8.5 请求读取.. 434

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.1</span></span></chsdate> 请求读取概述.. 434

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.2</span></span></chsdate> HTTP请求报文.. 435

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.3</span></span></chsdate> request_rec结构.. 437

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.4</span></span></chsdate> 请求读取实现.. 444

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.5</span></span></chsdate> 请求行读取.. 452

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.6</span></span></chsdate> 请求头读取.. 454

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">8.5.7</span></span></chsdate> 网络IO读写.. 458

9 过滤器.. 459

9.1 过滤器概述.. 460

9.2 过滤器类型.. 463

9.3 过滤器结构.. 466

9.4 过滤器协议.. 468

9.5 过滤器操作.. 470

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.1</span></span></chsdate> 过滤器注册概述.. 470

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.2</span></span></chsdate> 数据结构描述.. 470

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.3</span></span></chsdate> 过滤器结点操作.. 472

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.4</span></span></chsdate> 过滤器注册.. 474

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.5</span></span></chsdate> 过滤器的查找.. 479

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.6</span></span></chsdate> 添加过滤器至指定请求或者连接.. 480

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.7</span></span></chsdate> 从连接中删除过滤器.. 485

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.5.8</span></span></chsdate> 过滤器初始化.. 486

9.6 智能过滤器.. 487

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.6.1</span></span></chsdate> 何谓智能过滤器.. 487

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.6.2</span></span></chsdate> 智能过滤器的使用.. 491

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.6.3</span></span></chsdate> 智能过滤器的实现.. 492

9.7 过滤器函数.. 506

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.7.1</span></span></chsdate> 输出过滤器.. 506

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">9.7.2</span></span></chsdate> 输入过滤器.. 507

10 存储段和存储段组.. 509

10.1 什么是存储段和存储段组.. 510

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.1.1</span></span></chsdate> 何为存储段和存储段组.. 510

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.1.2</span></span></chsdate> 为什么需要存储段组.. 513

10.2 存储段分配子.. 515

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.2.1</span></span></chsdate> 概述.. 515

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.2.2</span></span></chsdate> 分配子创建.. 516

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.2.3</span></span></chsdate> 存储段内存分配.. 518

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.2.4</span></span></chsdate> 存储段内存释放.. 522

10.3 存储段操作概述.. 522

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.3.1</span></span></chsdate> 存储段接口.. 522

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.3.2</span></span></chsdate> 存储段空接口.. 526

10.4 存储段类型.. 532

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.1</span></span></chsdate> 堆存储段(Heap Bucket) 533

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.2</span></span></chsdate> 内存池存储段(Pool Bucket) 537

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.3</span></span></chsdate> 文件存储段(File Bucket) 540

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.4</span></span></chsdate> MMAP存储段(MMAP Bucket) 544

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.5</span></span></chsdate> 套接字存储段(Socket Bucket) 547

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.6</span></span></chsdate> 管道存储段(Pipe bucket) 549

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.7</span></span></chsdate> 持久存储段(Immortal Bucket) 550

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.8</span></span></chsdate> 临时存储段(Transient Bucket.. 552

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.9</span></span></chsdate> 刷新存储段(Flush Bucket) 553

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.10</span></span></chsdate> 流终止(EOS)存储段.. 555

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.4.11</span></span></chsdate> HTTP错误存储段.. 556

10.5 存储段操作.. 558

10.6 存储段组操作.. 561

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.1</span></span></chsdate> 创建存储段组.. 561

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.2</span></span></chsdate> 存储段组的销毁.. 562

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.3</span></span></chsdate> 存储段组的分裂.. 562

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.4</span></span></chsdate> 统计存储段长度.. 567

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.5</span></span></chsdate> 存储段转换.. 568

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.6.6</span></span></chsdate> 数据写入.. 569

10.7 存储段组和过滤器.. 576

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.7.1</span></span></chsdate> 存储段组和过滤器的关系.. 576

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.7.2</span></span></chsdate> 获取存储段组.. 576

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.7.3</span></span></chsdate> 存储段组传递.. 577

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">10.7.4</span></span></chsdate> 向客户发送信息的时机.. 578

11 常用过滤器.. 1

11.1 概述.. 2

11.2 输入过滤器.. 2

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.2.1</span></span></chsdate> CORE_IN输入过滤器.. 4

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.2.2</span></span></chsdate> HTTP_IN过滤器.. 16

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.2.3</span></span></chsdate> 创建自己的输入过滤器.. 27

11.3 输出过滤器.. 29

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.1</span></span></chsdate> 资源过滤器.. 31

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.2</span></span></chsdate> 内容过滤器.. 35

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.3</span></span></chsdate> 协议过滤器.. 36

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.4</span></span></chsdate> 编码转换过滤器.. 53

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.6</span></span></chsdate> 网络过滤器(CORE) 56

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span class="MsoHyperlink"><span lang="EN-US" style="mso-no-proof: yes">11.3.6</span></span></chsdate> 编写输出过滤器.. 56

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值