【LNMP环境部署】使用编译安装的方式部署Nginx、PHP环境
由于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的版本
2、通过wget下载到系统里
3、解压并编译安装Nginx前需要安装pcre、pcre-devel、zlib、zlib-devel等支持,否则会报如下错误
4、使用yum安装相应的支持环境
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
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去掉让其生效,这里用复制的方式生成一份需要的文件,把原本的文件当做备份。
5、在PHP源码包内(是源码包,不是安装目录)有一个php.ini-production,复制到PHP lib目录下,并更名为php.ini
开启Nginx和php-fpm:
1、分别运行Nginx和php-fpm脚本开启服务,然后使用netstat检查端口,可以看到80和9000端口已经开启,并且可以通过网页访问到默认的页面
2、编辑nginx的配置文件,只要是访问php页面,都丢给9000端口的php-fpm来处理,这里不对每项配置做解释了,只对红框处的路径说明下,这里的路径一定要是网页文件所在的路径,或者填写变量为$document_root$fastcgi_script_name;
3、编写一个php探针页面,脚本如下:
<?php phpinfo(); ?>
4、访问测试,如果能出现相关页面就代表成功了,通过该页面可以看到PHP所支持的扩展,也可以使用php -m命令来获取模块支持情况
安装opcache:
1、进入php源码包的ext目录,其中可以看到opcache目录,进去后就是opcache的安装脚本
2、上一步可以看到没有configure文件,这个时候需要执行phpize命令来安装扩展,该命令在php的安装目录下的bin下
3、执行phpize后生成了需要的configure文件
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相关信息就代表已经成功了
评论
天空博客
回复杠杠滴
天空的承诺
回复谢谢分享,感谢楼主,楼主万岁,楼主辛苦了,一定长久支持楼主。
Mr.路
回复@天空的承诺 @天空的承诺:不客气 大家一起进步