Apache源代码全景分析第1卷
正版二手书,欢迎选购
¥
19.14
2.2折
¥
88
八品
仅1件
作者张中庆|梁雪平
出版社电子工业出版社
ISBN9787121084744
出版时间2009-05
装帧平装
开本其他
定价88元
货号1713359243786703872
上书时间2024-12-10
商品详情
- 品相描述:八品
- 商品描述
-
作者简介
张中庆,计算机软件与理论硕士。拥有多年服务器端软件开发经验,关注大规模服务器设计技术,致力于开源技术的使用、分享和推广,《UNIX/Linux下curses库开发指南》作者之一。
梁雪平,计算机应用硕士,深圳职业技术学院讲师,优秀教师。目前研究方向为数据库挖掘相关理论,致力于开源技术在高校的使用和推广。
目录
第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 主程序MAIN41
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 处理.htaccess117
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 提供者API212
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 INETD249
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
第6章 网络连接359
6.1 网络连接概述360
6.1.1 网络连接上下文环境360
6.1.2 等待连接361
6.1.3 接受连接361
6.1.4 创建连接361
6.2 连接数据结构361
6.3 等待连接364
6.3.1 概述364
6.3.2 套接字创建365
6.3.3 套接字侦听369
6.4 连接处理376
6.4.1 连接处理概述376
6.4.2 创建连接377
6.4.3 连接处理379
6.5 请求读取385
6.5.1 请求读取概述385
6.5.2 HTTP请求报文386
6.5.3 request_rec结构388
6.5.4 请求读取实现395
6.5.5 请求行读取402
6.5.6 请求头读取404
6.5.7 网络IO读写408
第7章 过滤器409
7.1 过滤器概述410
7.2 过滤器类型412
7.3 过滤器结构414
7.4 过滤器协议416
7.5 过滤器使用418
7.5.1 静态过滤器使用418
7.5.2 动态过滤器使用419
7.6 过滤器操作419
7.6.1 过滤器注册概述419
7.6.2 数据结构描述420
7.6.3 过滤器结点422
7.6.4 过滤器注册424
7.6.5 过滤器的查找428
7.6.6 添加过滤器至指定请求或连接429
7.6.7 从连接中删除过滤器436
7.6.8 过滤器初始化437
7.7 智能过滤器438
7.7.1 何谓智能过滤器438
7.7.2 智能过滤器的使用442
7.7.3 智能过滤器的实现442
7.8 过滤器函数457
7.8.1 输出过滤器457
7.8.2 输入过滤器457
第8章 存储段和存储段组459
8.1 什么是存储段和存储段组460
8.1.1 存储段和存储段组460
8.1.2 为什么需要存储段组463
8.2 存储段分配子465
8.2.1 概述465
8.2.2 分配子创建466
8.2.3 存储段内存分配467
8.2.4 存储段内存释放471
8.3 存储段操作概述471
8.3.1 存储段接口471
8.3.2 存储段空接口476
8.4 存储段类型482
8.4.1 堆存储段(Heap Bucket)483
8.4.2 内存池存储段(Pool Bucket)487
8.4.3 文件存储段(File Bucket)490
8.4.4 MMAP存储段(MMAP Bucket)494
8.4.5 套接字存储段(Socket Bucket)497
8.4.6 管道存储段(Pipe Bucket)499
8.4.7 持久存储段(Immortal Bucket)500
8.4.8 临时存储段(Transient Bucket)502
8.4.9 刷新存储段(Flush Bucket)503
8.4.10 流终止(EOS)存储段505
8.4.11 HTTP错误存储段507
8.5 存储段操作508
8.6 存储段组操作511
8.6.1 创建存储段组512
8.6.2 存储段组的销毁512
8.6.3 存储段组的分裂513
8.6.4 统计存储段长度517
8.6.5 存储段转换518
8.6.6 数据写入520
8.6.7 ap_r*函数写入526
8.7 存储段组和过滤器528
8.7.1 存储段组和过滤器的关系528
8.7.2 获取存储段组528
8.7.3 存储段组传递529
第9章 常用过滤器531
9.1 概述532
9.2 输入过滤器532
9.2.1 CORE_IN输入过滤器534
9.2.2 HTTP_IN过滤器545
9.2.3 创建自己的输入过滤器556
9.3 输出过滤器558
9.3.1 资源过滤器559
9.3.2 内容过滤器563
9.3.3 协议过滤器564
9.3.4 编码转换过滤器580
9.3.5 网络过滤器(CORE)583
9.3.6 编写输出过滤器591
索引603
内容摘要
本书是“Apache源代码全景分析”的第1卷。书中详细讲解了Apache的基础体系结构和核心模块的实现机制,包括配置文件、模块化结构、多任务并发,以及网络连接和请求读取,其中多任务并发体系结构是本书分析的重点,讨论了Prefork、Worker及WinNT3种MPM。本书还重点介绍了Apache 2.0新引入的过滤器,包括过滤器的使用、实现,以及其中的数据组织形式——存储段和存储段组,剖析了Apache中常用的过滤器。本书深入挖掘分析Apache运行背后的实现机制和模块开发的细节,适合Apache模块开发者、希望了解内部细节的Apache管理员、Web服务器开发者、大规模服务器开发者学习和阅读。
— 没有更多了 —
以下为对购买帮助不大的评价