内容介绍
Nginx是一个高性能的轻量级Web服务器,本书从配置文件的角度出发,介绍了多种关于Nginx配置的技巧。 本书以模块化风格写成,几乎每一章都是一个独立的模块,读者将能够自由地在各个模块间切换阅读。全书分两部分,DIYI部分用9章内容介绍了安装Nginx及第三方模块、配置向导、使用mail模块、Nginx作为反向代理、Nginx Http服务器、Nginx的开发、在Nginx中集成Lua以及故障排除技巧;第二部分用4个附录的形式介绍了指令参考、Rewrite规则指南、Nginx社区以及Solaris系统下的网络调优。 本书适合在安装和配置服务器方面有经验的系统管理员或系统工程师,阅读本书不需要任何Nginx使用经验,相信这本书会帮助读者更好地完成任务。
作者介绍
本书在国外众多的Nginx图书中,以其简洁实用得到了读者和专家的认可。国内有Nginx图书作者和专家专门向我们推荐本书,并自愿承担翻译工作。 本书第1版在我社出版后,较短时间内重印,总印数4000册
关联推荐
配置Nginx的深入指南
目录
目录
第1章安装Nginx及第三方模块 1
1.1使用包管理器安装Nginx 2
1.1.1在Centos上安装Nginx 2
1.1.2在Debian上安装Nginx 3
1.2从源代码安装Nginx 3
1.2.1准备编译环境 3
1.2.2从源代码编译 4
1.2.3为Web或者Mail服务器
配置Nginx 5
1.2.4邮件代理的配置选项 6
1.2.5指定路径的配置选项 6
1.3配置SSL支持 7
1.4使用各种模块 7
禁用不再使用的模块 9
1.5查找并安装第三方模块 10
1.6添加对Lua的支持 11
1.7组合在一起 11
1.8小结 13
第2章配置指南 14
2.1基本配置格式 14
2.2Nginx全局配置参数 15
2.3使用include文件 16
2.4HTTP的server部分 17
2.4.1客户端指令 17
2.4.2文件I/O指令 18
2.4.3Hash指令 19
2.4.4Socket指令 19
2.4.5示例配置文件 20
2.5虚拟服务器部分 20
2.6Locations—where,when,how 24
2.7完整的示例配置文件 26
2.8小结 27
第3章使用mail模块 29
3.1基本代理服务 29
3.1.1mail的server配置部分 30
3.1.2POP3服务 32
3.1.3IMAP服务 33
3.1.4SMTP服务 33
3.1.5使用SSL/TLS 34
3.1.6完整的mail示例 37
3.2认证服务 38
3.3与memcached结合 46
3.4解释日志文件 48
3.5操作系统限制 50
3.6小结 51
第4章Nginx作为反向代理 52
4.1反向代理简介 53
4.2代理模块 54
4.3带有cookie的遗留应用程序 57
4.4upstream模块 58
4.5保持活动连接 59
4.6上游服务器的类型 61
4.7单个上游服务器 61
4.8多个上游服务器 62
4.9非HTTP型上游服务器 63
4.9.1Memcached上游服务器 63
4.9.2FastCGI上游服务器 64
4.9.3SCGI上游服务器 65
4.9.4uWSGI上游服务器 65
4.10负载均衡 65
负载均衡算法 65
4.11将if配置转换为一个更现代的
解释 66
4.12使用错误文件处理上游服务器
问题 70
4.13确定客户端真实的IP地址 72
4.14小结 72
第5章反向代理高级话题 73
5.1安全隔离 74
5.1.1使用SSL对流量进行加密 74
5.1.2使用SSL进行客户端身份
验证 76
5.1.3基于原始IP地址阻止流量 78
5.2孤立应用程序组件的扩展 80
5.3反向代理服务器的性能调优 83
5.3.1缓冲数据 84
5.3.2缓存数据 86
5.3.3存储数据 90
5.3.4压缩数据 91
5.4小结 94
第6章Nginx HTTP服务器 95
6.1Nginx的系统架构 95
6.2HTTP核心模块 96
6.2.1server指令 97
6.2.2Nginx中的日志 98
6.2.3查找文件 101
6.2.4域名解析 103
6.2.5客户端交互 104
6.3使用limit指令防止滥用 106
6.4约束访问 110
6.5流媒体文件 114
6.6预定义变量 115
6.7SPDY和HTTP/2 117
6.8使用Nginx和PHP-FPM 118
6.9一个Drupal的配置示例 121
6.9将Nginx和uWSGI结合 129
一个Django的配置示例 129
6.10小结 131
第7章Nginx的开发 133
7.1集成缓存 133
7.1.1应用程序没有缓存 134
7.1.2使用数据库缓存 135
7.1.3使用文件系统做缓存 138
7.2动态修改内容 141
7.2.1使用addition模块 141
7.2.2sub模块 142
7.2.3xslt模块 143
7.3使用服务器端包含SSI(Server
Side Include) 144
7.4Nginx中的决策 146
7.5创建安全链接 150
7.6生成图像 152
7.7跟踪网站访问者 155
7.8防止意外代码执行 156
7.9小结 157
第8章在Nginx中集成Lua 159
8.1ngx_lua模块 159
8.2集成Lua 160
8.3使用Lua记录日志 163
8.4小结 163
第9章故障排除技巧 164
9.1分析日志文件 164
9.1.1错误日志文件格式 164
9.1.2错误日志文件条目实例 166
9.2配置高级日志记录 168
9.2.1调试日志记录 169
9.2.2在运行时切换二进制运行
文件 169
9.2.3使用访问日志文件进行
调试 175
9.3常见的配置错误 177
9.3.1使用if取代try_files 178
9.3.2使用if作为主机名切换 179
9.3.3不使用server部分的配置追求
更好的效果 180
9.4操作系统限制 181
9.4.1文件描述符限制 181
9.4.2网络限制 183
9.5性能问题 184
9.6使用Stub Status模块 186
9.7小结 187
附录A指令参考 189
附录BRewrite规则指南 224
附录CNginx社区 236
附录DSolaris系统下的网络调优 239