《Nginx HTTP Server》

前言

Web服务器市场长期以来的领头羊是Apache,这是一个众所周知的事实。根据最近的调查,截至2009年10月,超过45%的Web服务器都是由这个有着15年悠久历史的开源应用提供的。然而,过去几个月同样的一份报告,也揭示了一个新的竞争对手崛起:Nginx,一个来自己俄罗斯的轻量级HTTP服务器---读作“engin X”。对于这个新生事物,疑问了不少:为什么博客世界对它的出现表现得如些兴奋?是什么原因造成如些多的服务器管理员自2009年开始纷纷切换到Nginx?这个小软件成熟到足以远行高流量网站了吗?

首先,Nginx并不是想像的那么年轻。它最初开始于2002年,该项目由一个独立开发人员实现,他就是Igor Sysoev,当时的目的是满足一个访问流量极大的俄罗斯门户网站。该网站在2008年9月每天收到HTTP请求高达50亿。该Web应用现在由一些非常流行的网站用来提供Web服务,例如WordPress、Hulu、SourceForge等许多网站。事实证明,Nginx是一个非常高效的、轻量级的但功能强大的Web服务器。在本书中,你会发现Nginx的许多功能,会理解为什么这么多管理员都会放弃Apache而信赖这个新的HTTP服务器。

在许多方面,Nginx都比竞争对手更高效。首先最重要的一点是速度。通过利用异步套接字,Nginx在收到请求时,不会派生出与请求一样多的子进程。考虑减轻CPU负载和内存消耗,每个核(core)一个进程足以处理数千个连接。其次是易用——与其他Web服务器解决方案(例如Apache)相比较,配置文件的读取和调整都十分简单。只需几行就足以建立一个完整的虚拟主机配置。最后但同样重要的是模块性。Nginx不但是一个在类BSD许可下发布的完全开源项目,它还自带一个强大的插件系统——称为“模块”。原始发布归档文件中包含种类繁多的模块,许多第三方模块都能从网上下载。总的来说,Nginx集速度、效率和能力于一体,提供了成功Web服务器的完美组合。迄今为止,相对于Apache来说,它是最好的选择。

尽管Nginx从0.7.52版后开始支持Windows,但是众所周知,对于生产网站来说,首选的giop是基于Linux的发布。对于本中所描述的各个过程,我们假设你的网站基于Linux操作系统,例如Debian、Fedora、CentOS、Mandriva或者其他从所周知的发布版本。

本书主题

第1章 “准备工作环境” 提供了一个基本的方法,帮助读者认识Linux命令行环境,本书自始至终都会使用这个方法。

第2章 “下载和安装Nginx” 通过下载的安装Nginx,也包括先决条件的下载和安装,以帮助读者了解整个安装过程。

第3章 “Nginx的基本配置” 帮助你认识Nginx的基本配置的设置Core模块。

第4章 “HTTP配置” 详细讲述HTTP核心模块,包括主要的配置模块和指令。

第5章 “模块配置” 帮助你认识Nginx的许多官方模块,包括Rewrite模块和SSI模块。

第6章 “Nginx与PHP、Python” 解释了如何设置PHP和其他第三方应用程序(如果你对动态网站感兴趣)以通过FastCGI与Nginx协同工作。

第7章 “Nginx和Apache” 教你设置Nginx为反向代理服务器,使其与Apache一同提供服务。

第8章 “从Apache到Nginx” 详细指导读者如何从Apache切换到Nginx。

附录A “指令索引” 列出并描述了所有配置指令,按照字母顺序排序。模块提供的指令在相关章节中也有描述。

附录B 列出了模块的参考。

附录C “疑难解答” 讨论了管理员在配置Nginx时可能面对的最常见的一些问题。

本书前提条件

Nginx是一个自由、开源的软件,它可以运行于各种不同的操作系统——基于Linux、Mac OS、Windows操作系统,等等。因此,就软件而言,并没有真正的需求。不过,本书尤其是前两章,我们将在Linux环境下工作,所以会优先考虑运行基于Linux的操作系统。针对Nginx的编译安装有哪些前提条件,则在第2章讲述。

本书读者对象

无论是Nginx的初学者,还是有经验的管理员,都可以将本书视为良师益友。对于前者,本书将带领你经历一个完整的过程——从下载、编译、安装,到配置各种模块,直至完整建立一个轻量级的HTTP服务器;对于后者,它提供来自不同角度的方法,能帮助你充分利用现有的基础设施。随着本书描述的深入,还将提供一个完整的Nginx模块和指令参考,解释如何利用Nginx取代现有服务器或让Nginx作为现有服务器的前端服务器。

评论 X

      友荐云推荐
      Copyright 2011-2014. YiiBook.com