在这个点击率就是生命的时代,高可用是不可少的。本书完整讲述了Nginx服务器的各种技术细节以及安装、部署、运维等方面的内容。
《决战Nginx系统卷:高性能Web服务器详解与运维》第一部分首先讲述了Nginx服务器的功能、模块管理和进程管理,然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。
在第二部分中,通过具体使用实例讲述了Nginx的模块(包括官方模块和第三方模块),并详细介绍了充分使用Nginx的方式方法。同时在这里使用了Heartbeat服务实现Nginx服务器的高可用。
本书的最后一部分是关于Nginx使用缓存技术的方法,共列举了Nginx使用的五大缓存,特别是广泛使用的代理缓存、Memcached和Varnish,另外对于Memcached服务器的使用贯穿了整套书。在本书中着重讲述了它的协议、原理和使用,而在本书姊妹篇中则通过不同语言的客户端对Memcached服务器实现具体使用。
本书适用于广大的Linux爱好者、具有一定Linux基础的系统管理员、Linux下的Web服务器管理员、Linux服务器下动态语言开发人员、Nginx服务器管理员、培训中心师生、运维人员以及一切应该了解和使用Nginx的用户。
第1部分 Nginx服务器
第1章 Nginx的功能
1.1 功能描述
1.1.1 基本HTTP功能
1.1.2 其他HTTP功能
1.1.3 邮件代理服务器功能
1.1.4 架构和可扩展性
1.1.5 被测试的系统和平台
1.2 服务器的类型
1.3 认识Nginx服务器的基本模块
1.3.1 Nginx的内核模块
1.3.2 Nginx的事件模块
1.3.3 Nginx的HTTP内核模块
第2章 Nginx的模块管理和
进程管理
2.1 模块管理
2.1.1 从源码看模块
2.1.2 选择使用Nginx的模块
2.1.3 Nginx使用第三方模块
2.2 进程管理
2.2.1 master进程和worker进程
2.2.2 关于worker数目的设置
2.3 针对Nginx对Linux系统的优化
2.3.1 关闭系统中不需要的服务
2.3.2 优化写磁盘操作
2.3.3 优化资源限制
2.3.4 优化内核TCP选项
2.4 优化Nginx服务器
2.4.1 关闭访问日志
2.4.2 使用epoll
2.4.3 Nginx服务器配置优化
第3章 Nginx如何处理一个请求
3.1 IP、域名部分的处理
3.1.1 基于名字的虚拟主机
3.1.2 阻止处理对不明确主机名的请求
3.1.3 基于IP和域名的虚拟域名服务器处理请求
3.2 URI部分的处理
3.2.1 实例
3.2.2 分析
第4章 服务器名字
4.1 通配符名字
4.2 正则表达式名字
4.3 其他不同种类的名字
4.4 名字优化
4.5 兼容性
4.6 对服务器名字的扩展
4.7 基于目录名的域名访问
4.7.1 正则表达式处于主机名字的位置上
4.7.2 正则表达式处于域名的位置上
4.8 关于$1、$2…的使用
第5章 协助用户操作Nginx的工具
5.1 工具1——nginx.vim
5.1.1 下载与安装
5.1.2 使用
5.2 工具2——eperusio-nginx_ensit
5.2.1 下载与安装
5.2.2 相关命令
5.2.3 实例
5.3 工具3——htpasswd.py
5.3.1 下载文件
5.3.2 命令的使用方法
5.4 工具4——Nginx启动脚本
第6章 5xx错误及处理
6.1 500内部服务器错误
6.1.1 问题分析
6.1.2 问题解决
6.2 502问题—— 502 bad gateway
6.3 504问题—— 504 gatewaytime-out
第7章 使用TCMalloc优化Nginx
7.1 相关安装
7.2 配置示例
7.3 指令
7.4 使用实例
第8章 PCRE正则表达式
8.1 安装PCRE
8.2 命令
8.2.1 pcre-config命令
8.2.2 pcretest命令
8.3 man目录
8.4 Nginx与正则表达式
8.4.1 正则表达式支持UTF-8
8.4.2 Nginx使用正则表达式
第9章 Nginx高可用的实现
9.1 安装Heartbeat
9.1.1 下载安装glue
9.1.2 下载安装Heartbeat
9.1.3 安装agents
9.2 配置Heartbeat
9.2.1 ha.cf文件
9.2.2 haresources文件
9.2.3 authkeys文件
9.3 启动Heartbeat
9.3.1 环境部署
9.3.2 启动主Heartbeat
9.3.3 启动备用Heartbeat
9.4 测试Heartbeat
9.4.1 宕掉主节点
9.4.2 重新启动主节点
第10章 10个QA
10.1 什么是Nginx
10.2 Nginx可以安装在哪些操作系统下
10.3 Nginx在Windows下的性能如何
10.4 Nginx与Apache比较有哪些优点
10.5 Nginx解决了C10k问题
10.6 从Nginx接收客户端请求处理的角度来说,它与Apache有何不同
10.7 安装完成Nginx后,如何查看Nginx的版本
10.8 安装完成Nginx后,如何查看configure时的配置
10.9 启动Nginx后,能不能看到Nginx当前都支持哪些模块
10.10 Https仅能用在指定的目录下吗
第2部分 Nginx服务器的功能模块
第11章 限 制 流 量
11.1 指令
11.2 实例配置
第12章 限制用户并发连接数
12.1 示例配置
12.2 指令
12.3 配置实例
第13章 修改或隐藏Nginx的版本号
13.1 隐藏版本号
13.2 修改版本号
第14章 配置FLV服务器
14.1 示例配置
14.2 指令
14.3 配置实例
第15章 Nginx的访问控制
15.1 配置示例
15.2 指令
15.3 使用实例
第16章 提供FTP下载
16.1 配置示例
16.2 指令
16.3 使用实例
第17章 Nginx与编码
17.1 文件和文件名的编码
17.2 使用convmv
17.3 使用enca
17.4 字符集设置模块
第18章 网页压缩传输
18.1 HttpGzipModule
18.2 HttpGzipStaticModule
第19章 控制Nginx如何记录日志
第20章 map模块的使用
第21章 Nginx预防应用层DDoS攻击
21.1 Limit request模块
21.2 访问测试
21.2.1 限制连接数
21.2.2 未限制连接数
第22章 为Nginx添加、清除或改写响应
22.1 HttpHeadersModule
22.2 ngx_headers_more
第23章 重写URI
第24章 Nginx与服务器端包含
24.1 ssi指令
24.2 使用实例
第25章 Nginx与X-Sendfile
25.1 处理流程
25.2 特殊头
25.3 使用实例 2
第26章 在Nginx的响应体之前或之后添加内容
第27章 Nginx与访问者的地理信息
第28章 Nginx的图像处理
第29章 location中随机显示文件
第30章 后台Nginx服务器记录原始客户端的IP地址
第31章 解决防盗链
31.1 使用Referer模块
31.2 使用AccessKey模块
31.3 使用SecureLink模块
第32章 Nginx提供HTTPS服务
32.1 兼容性
32.2 安装SSL服务
32.3 通配符证书
32.4 变量
32.5 非标准的错误代码
32.6 使用举例
32.6.1 单向认证
32.6.2 更新Nginx配置
32.6.3 访问测试
32.6.4 双向认证
32.6.5 创建相关目录
32.7 HTTPS 服务器优化
第33章 监控Nginx的工作状态
第34章 使用empty_gif
第35章 Nginx实现对响应体内容的替换
第36章 Nginx的WebDAV
第37章 Nginx的Xslt模块
第38章 Nginx的基本认证方式
38.1 生成密码
38.2 添加配置
38.3 访问测试
第39章 Nginx的cookie
第40章 Nginx基于客户端请求头的访问分
第41章 通过Upstream模块使得Nginx实现后台服务器集群
第42章 根据浏览器选择主页
第43章 关于Nginx提供下载.ipa或.apk文件的处理方法
第44章 SCGI
44.1 被传递给SCGI服务器的参数
44.2 实例1:Perl语言的应用
44.3 实例2:Python语言的应用
44.4 在Nginx中使用Etag
第45章 Expires与ETag
45.1 安装nginx-static-etags模块
45.2 安装nginx-dynamic-etags模块
45.3 四个头的区别与联系
第46章 使用upstream_keepalive模块实现keep-live
第47章 后台服务器的健康检测
第48章 使用sticky模块实现粘贴性会话
第49章 Nginx对后台服务器实现“公平”访问
第50章 Nginx使用redis数据库
50.1 安装redis模块
50.2 安装redis2模块
50.3 关于redis
第51章 Nginx访问MongoDB
51.1 安装nginx-gridfs模块
51.2 关于MongoDB
第52章 Nginx访问Mogilefs
第3部分 Nginx与缓存
第53章 缓存技术——proxy_cache
《我是微商4》内容简介:本书是微商界超级畅销书“我是微商”系列的第4本,是三位作者服务了2000多家国内微商品牌之后,总结得出的
ActionScript3.0是Flash编程语言的一次重大升级,它更加高效、清晰和完善。《ActionScript3.0基础教程》详细地介绍了ActionSc...
《ECMAScript6入门》全面介绍了ECMAScript6新引入的语法特性,覆盖了ECMAScript6与ECMAScript5的所有不同之处,对涉及的语法...
《3G知识问答》以问答的方式通俗地介绍了3G的有关知识,主要内容包括:3G网络的基础知识、3G网络所涉及的基本技术,以及3G网络所
《什么是产品设计?》的处罚点是思考第一件产品对产品设计所产生的实力影响:它是手工制品,并通过艺术的个性化和手工艺技巧,对希
《东线:中央集团军群的覆灭》内容简介:《东线》系列丛书,由著名军事作家朱世巍先生撰写。它全面而详细地讲述了二战中苏德战争的
《SQL反模式》是一本广受好评的SQL图书。它介绍了如何避免在SQL的使用和开发中陷入一些常见却经常被忽略的误区。它通过讲述各种具
科技的發展讓我們的生活變得複雜,連向來簡單的家用電器都被加上繁複的控制面板,更別說家裡堆滿了各式各樣的遙控器。我們必須要
《如厕书》内容简介:31个发生在厕所的神奇小故事,一部充满想象力的短篇小说集! 家庭主妇销毁偷吃证据,职员被困马桶尴尬时刻,甚
《你听懂了没有》内容简介:“妙境只在自己意念的一转换间,人生的陷阱转眼就成为人生的福地。”——戴建业 这本随笔集精选戴教授的
《MFCWindows程序设计》是对其极为经典的第1版的全面更新,书中不仅扩展了已被认为是权威的Microsoft用于WindowsAPI的功能强大的
Manycompaniesrecognizethatpeopleexpecteffortless,engaginginteractionwithdesktopa...
《笺事:花笺信札及其他》内容简介:近年来,纸品收藏日趋兴盛,花笺、书札是其中的重点,其审美价值与文化价值都得到社会的高度关
《当下的修行:要懂得一点放下》内容简介:其实,生活本该是一个轻松的课题,只是我们一直无法放下心中的累赘,将不该看重的东西看
TherehasbeenadramaticgrowthinthedevelopmentandapplicationofBayesianinferentialme...
《渐进与突破》内容简介:俄罗斯远东联邦区发展油气产业的支点在萨哈林地区,而其“主角”是萨哈林岛。萨哈林岛引人注目之处不仅在
《发现高更:在孤独中飞翔》内容简介:130年前,高更踏上塔希提岛,一个被称为世外桃源的南太平洋小岛。他来自文明却渴望原始,看似
"Ifyoureseriousaboutrecording-whetheryoureanamateurenthusiast,astudent,amusician...
《移动通信频谱技术与5G频率部署》内容简介:无线电频谱是所有无线电业务的稀缺、关键资源。对移动运营商而言,频谱资源是网络建设
数据库系统原理及应用 本书特色 本书特色:根据数据库发展的过程与特点,从不同角度出发,凝炼出数据库发展的三条线索覆盖的知识面广,既包括数据库理论,又包括数据库应...