【LNMP环境部署】使用编译安装的方式部署Nginx、PHP环境

TangLu 未命名 2016-12-16 8036 3

由于Nginx的高并发和节约系统资源的特性,使得市场占有率越来越高。下面是一个Nginx结合PHP5.5的环境搭建教程,和Apache不同的是Nginx不再是采用模块的形式来结合PHP,而是FastCGI。在老版本的PHP中需要单独安装php-fpm,但是到PHP5.5开始已经可以直接启用该选项来实现,而且PHP5还内置了opcache缓存加速,可以不再额外安装Xcache或者是eAccelerator,跟着教程一步一步来绝对可以搭建出一个需要的环境。


一、Nginx的下载与安装

1、访问Nginx官方网站www.nginx.org,选择stable稳定版,这里我们选择1.6.2的版本

lnp0.png

2、通过wget下载到系统里

lnp1.png

3、解压并编译安装Nginx前需要安装pcre、pcre-devel、zlib、zlib-devel等支持,否则会报如下错误

lnp2.png

4、使用yum安装相应的支持环境

lnp3.png

5、编译安装Nginx,安装完成后使用"nginx -v"查看安装的版本号,"nginx -V"可以看到编译时指定的选项

./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_stub_status_module --with-pcre
make && make install


二、PHP的下载与安装

1、访问PHP官方网站http://php.net/,下载5.5版本PHP

lnp4.png

2、编译安装PHP前需要安装libxml2、libxml2-devel,直接yum安装即可,不再累述

3、在安装PHP的时候有很多选项,生产环境中根据需要来安装,在这里只加上必须的选项用于实验

./configure --prefix=/usr/local/php  --enable-fpm  --with-fpm-user=nginx --with-fpm-group=nginx  --enable-mysqlnd --with-mysqli=/usr/local/mysql/bin/mysql_config

make && make install



4、PHP安装结束后在/usr/local/php/etc目录有个php-fpm的配置文件,把文件名后面的.default去掉让其生效,这里用复制的方式生成一份需要的文件,把原本的文件当做备份。

lnp5.png

5、在PHP源码包内(是源码包,不是安装目录)有一个php.ini-production,复制到PHP lib目录下,并更名为php.ini

lnp6.png



开启Nginx和php-fpm:

1、分别运行Nginx和php-fpm脚本开启服务,然后使用netstat检查端口,可以看到80和9000端口已经开启,并且可以通过网页访问到默认的页面

lnp7.png

2、编辑nginx的配置文件,只要是访问php页面,都丢给9000端口的php-fpm来处理,这里不对每项配置做解释了,只对红框处的路径说明下,这里的路径一定要是网页文件所在的路径,或者填写变量为$document_root$fastcgi_script_name;

lnp8.png

3、编写一个php探针页面,脚本如下:

<?php
phpinfo();
?>


4、访问测试,如果能出现相关页面就代表成功了,通过该页面可以看到PHP所支持的扩展,也可以使用php -m命令来获取模块支持情况

lnp9.png



安装opcache:

1、进入php源码包的ext目录,其中可以看到opcache目录,进去后就是opcache的安装脚本

lnp10.png

2、上一步可以看到没有configure文件,这个时候需要执行phpize命令来安装扩展,该命令在php的安装目录下的bin下

lnp11.png

3、执行phpize后生成了需要的configure文件

lnp12.png

4、./configure 、make 、make install三部曲安装

5、修改php.ini文件,在opcache段加入以下内容

[opcache]
zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1


6、重启php-fpm。然后访问探针页面,可以看到opcache相关信息就代表已经成功了

lnp13.png



评论

精彩评论
2016-03-31 15:50:29

杠杠滴

2015-04-08 12:06:48

谢谢分享,感谢楼主,楼主万岁,楼主辛苦了,一定长久支持楼主。

2015-04-08 15:52:47

@天空的承诺 @天空的承诺:不客气 大家一起进步