apache源代码全景分析pdf下载-apache源代码全景分析第1卷下载完整版pdf
apache源代码全景分析第1卷是一款专为想要了解apache源代码的朋友打造的图书,集web服务器概述,apache体系结构等等内容为一体,感兴趣的朋友赶紧来标准下载库下载吧
apache源代码全景分析pdf简介
apache源代码全景分析是“apache源代码全景分析”的第1卷。书中详细介绍了apache的基础体系结构和核心模块的实现机制,包括配置文件、模块化结构、多任务并发,以及网络连接和请求读取,其中多任务并发体系结构是本书分析的重点,讨论了prefork、worker及winnt三种mpm。本书还着重介绍了apache 2.0新引入的过滤器,包括过滤器的使用、实现,以及其中的数据组织形式——存储段和存储段组,剖析了apache中常用的过滤器。.
本书的目的是深入挖掘apache运行背后的实现机制和模块开发的细节,适合apache模块开发者、希望了解内部细节的apache管理员、web服务器开发者、大规模服务器开发者学习和阅读。
apache源代码全景分析pdf目录
第1章 web服务器概述. 1
1.1 www概述 2
1.1.1 internet概述 2
1.1.2 超文本的概念 3
1.1.3 www的历史 4
1.2 http服务器 8
1.2.1 http服务器简介 8
1.2.2 http服务器功能 9
1.2.3 www文档 11
1.2.4 工作方式 12
1.3 apache功能 15
1.3.1 虚拟主机 16
1.3.2 内容协商 16
1.3.3 持续连接 17
1.3.4 缓存 18
1.3.5 访问控制和安全 20
1.3.6 动态内容生成 21
第2章 apache体系结构 23
2.1 apache目录 24
2.2 apache层次结构 26
2.2.1 操作系统支持层 27
2.2.2 可移植运行库层 27
2.2.3 核心功能层 28
2.2.4 可选功能层 29
2.2.5 第三方支持库 29
2.2.6 apache工具包 30
2.3 apache核心功能层 30
2.3.1 核心与可选模块的关系 30
2.3.2 核心组件 30
2.4 apache运行流程 34
2.4.1 apache启动过程 35
2.4.2 http连接处理 36
2.4.3 请求报文读取 36
2.4.4 请求处理 37
2.4.5 内容生成 39
2.4.6 关闭与重启 40
2.5 主程序main 41
2.5.1 主程序概要 41
2.5.2 主程序细节 42
第3章 配置文件管理 51
3.1 apache配置系统 52
3.2 配置文件 52
3.2.1 配置文件类 52
3.2.2 配置文件处理时机 54
3.3 指令相关概念 56
3.3.1 指令概述 56
3.3.2 指令参数 57
3.3.3 指令上下文 59
3.3.4 指令参数类型 73
3.4 指令配置 76
3.4.1 指令结构 76
3.4.2 指令定义 77
3.4.3 预定义指令函数 79
3.4.4 指令表 80
3.5 apache配置处理 81
3.5.1 指令保存 81
3.5.2 指令读取 83
3.5.3 配置指令处理 98
3.5.4 特殊指令 112
3.6 .htaccess处理 115
3.6.1 .htaccess使用场合 115
3.6.2 指令的覆盖 116
3.6.3 处理.htaccess 117
3.7 实现自己的配置段 120
第4章 apache模块化体系结构 123
4.1 apache模块概述 124
4.1.1 apache模块组成 124
4.1.2 apache核心与模块交互 125
4.2 apache模块结构 127
4.3 模块的加载 132
4.3.1 模块变量 132
4.3.2 dso(dynamic shared object,动态共享对象)的概念 134
4.3.3 静态模块加载 137
4.3.4 动态模块加载 141
4.3.5 模块卸载 146
4.4 指令表 147
4.4.1 指令表概述 147
4.4.2 指令处理函数 148
4.4.3 指令共享 151
4.5 挂钩(hook) 154
4.5.1 为什么引入挂钩 154
4.5.2 声明挂钩 158
4.5.3 挂钩数组声明(apr_hook_link) 162
4.5.4 挂钩结构(apr_hook_struct) 162
4.5.5 挂钩函数注册(apr_implement_external_hook_base) 164
4.5.6 使用挂钩 165
4.5.7 挂钩排序 168
4.5.8 可选挂钩 179
4.5.9 挂钩纵览 184
4.5.10 自己编写挂钩 191
4.6 模块与配置文件 192
4.6.1 概述 192
4.6.2 如何描述配置信息 194
4.6.3 目录相关配置(per-directory config) 195
4.6.4 服务器配置(per-server config) 198
4.7 配置存储和使用 199
4.7.1 配置向量 199
4.7.2 配置存储体系结构 201
4.7.3 虚拟主机配置存储 202
4.7.4 目录配置存储 203
4.7.5 location配置存储 205
4.7.6 文件配置存储 205
4.7.7 总体存储示意 206
4.8 模块通信 207
4.8.1 简单通信方式 208
4.8.2 可选函数 209
4.8.3 提供者api 212
4.9 常用模块 216
4.9.1 缓存模块 216
4.9.2 url映射模块.. 217
4.9.3 内容生成模块 219
4.9.4 安全模块 221
4.9.5 代理模块 223
4.9.6 其余模块 224
第5章 多任务并发处理 227
5.1 多进程并发处理 228
5.1.1 概述 228
5.1.2 mpm在apache中的位置 229
5.2 mpm数据结构 231
5.2.1 记分板 231
5.2.2 终止管道(pipe of death) 244
5.3 inetd:通用的多任务处理结构 247
5.3.1 服务器程序概述 247
5.3.2 inetd 249
5.4 预创建(prefork)mpm分析 249
5.4.1 leader/follow模式 249
5.4.2 prefork mpm概述 250
5.4.3 prefork mpm实现 253
5.5 工作者(worker)mpm分析 291
5.5.1 worker mpm概述 291
5.5.2 worker主进程 294
5.5.3 子进程管理 305
5.5.4 线程管理 310
5.5.5 信号处理 323
5.6 winnt mpm分析 326
5.6.1 winnt mpm概述 326
5.6.2 完成端口相关概念 328
5.6.3 winnt mpm主程序 330
5.6.4 监控主进程 332
5.6.5 工作进程 336
5.6.6 线程处理 345