u013785951的专栏

1.Nginx介绍

Nginx是一个非常轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和

反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器。

2.对PHP支持

目前各种web 服务器对PHP的支持一共有三种:

(1)通过web 服务器内置的模块来实现,例如Apache的mod_php5,类似的Apache内置的mod_perl

可以对perl支持。

(2)通过CGI来实现,这个就好比之前perl的CGI,该种方式的缺点是性能差,因为每次服务器遇到

这些脚本都需要重新启动脚本解析器来执行脚本然后将结果返回给服务器;

另一方面就是不太安全;该方面几乎很少使用了。

(3)最新出现一种叫做FastCGI。所谓FastCGI就是对CGI的改进。它一般采用C/S结构,一般脚本处理器

会启动一个或者多个daemon进程,每次web 服务器遇到脚本的时候,直接交付给FastCGI的进程来执行,然后

将得到的结果(通常为html)返回给浏览器。

2.1 Apache+mod_php模式

我们很久一段时间使用经典的Apache+mod_php。

Apache对PHP的支持是通过Apache的模块来支持的。如果从源代码编译安装PHP的话,如果希望Apache支持

PHP的话,在./configure步骤需要指定–with-apxs2=/usr/local/apache2/bin/apxs 表示告诉编译器通过

libphp5.so拷贝到apache2的安装目录的modules目录下,并且还需要在httpd.conf配置文件中添加LoadModule

语句来动态将libphp5.so模块加载进来,从而实现Apache对php的支持。

2.2 Nginx+FastCGI模式

Nginx完全是轻量级的,必须借助第三方的FastCGI处理器才可以对PHP进行解析,因此其实这样看来Nginx是

非常灵活的,它可以和任何第三方提供解析的处理器实现连接从而实现对PHP的解析(在nginx.conf中很容易设置)。

Nginx可以使用spwan-fcgi。在早期版本中需要安装lighttpd,但是在9.10版本以后直接安装spawn-fcgi就可以。

现在出现了新的第三方的PHP的FastCGI处理器,叫做PHP-FPM,可以了解一下。本文是基于spawn-fcgi实现对

PHP模块的支持。

2.3安装FastCGI

/usr/bin/spawn-fcgi这个文件来管理 FastCGI,它原属于lighttpd这个包里面,但 9.10 后,spawn-fcgi

被分离出来单独成包。

(1)使用apt-get在线安装命令如下:

$sudo apt-get install spawn-fcgi

(2)源代码安装如下,下载地址为:

解压缩以后,进入目录下执行如下安装命令:

$./configure

$make

$make install

安装之后,spawn-fcgi命令就可以直接使用了,,它的可执行文件在/usr/local/bin/spawn-fcgi。

3.Nginx安装

源代码安装

下载地址:

下载的 nginx-×.tar.gz,安装过程很简单,如下:

$./configure

$make

$make install

安装成功之后,nginx放置在/usr/local/nginx目录下,主要的配置文件为conf目录下的nginx.conf,

nginx的启动文件在sbin目录下的nginx文件。

3.2启动Nginx

cd /usr/local/nginx

$sbin/nginx

然后就可以访问了,, 一切正常!如果不能访问,先不要继续,看看是什么原因,

解决之后再继续。

如果你的机器同时安装了Apache,那上面的访问方式就不能使用了,而且nginx都可能启动不了,这是

因为它们都是用了80这个端口。我们这里将nginx的端口修改为8080,

这里主要修改nginx的配置文件nginx.conf,将一下这一行

listen 80;

修改为

listen 8080;

然后就可以访问了,:8080/。

以一种进取的和明智的方式同它们奋斗。

u013785951的专栏

相关文章:

你感兴趣的文章:

标签云: