2.构建LNMP平台
问题
沿用练习一,通过调整Nginx服务端配置,实现以下目标:
1)配置Fast-CGI支持PHP网页
2)创建PHP测试页面,测试使用PHP连接数据库的效果
方案
使用2台RHEL6虚拟机,其中一台作为LNMP服务器(192.168.4.5)、另外一台作为测试用的Linux客户机(192.168.4.205),如图-1所示。
图-1
Nginx结合FastCGI技术即可支持PHP页面架构,因此本案例,需要延续练习一的实验内容,通过修改Nginx及php-fpm配置文件实现对PHP页面的支持。
php-fpm需要修改的常见配置如下:
listen = 127.0.0.1:9000
pm.max_children = 32
pm.start_servers = 15
pm.min_spare_servers = 5
pm.max_spare_servers = 32
步骤
实现此案例需要按照如下步骤进行。
步骤一:创建并修改php-fpm配置文件
1)生成php-fpm配置文件
默认安装完php后,会自动生成一个php-fpm参考模板,我们需要复制该模板,并进行适当修改即可。
[root@svr5 ~]# cd /usr/local/php5/etc/
[root@svr5 etc]# cp php-fpm.conf.default php-fpm.conf
2)修改php-fpm配置文件,并启动php-fpm服务
[root@svr5 etc]# vim /usr/local/php5/etc/php-fpm.conf
[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
log_level = error
daemonize = yes
[www]
user = www
group = www
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 32
pm.start_servers = 15
pm.min_spare_servers = 5
pm.max_spare_servers = 32
[root@svr5 ~]# cd php-5.4.9/sapi/fpm/ //进入安装包子目录
[root@svr5 fpm]# cp init.d.php-fpm /etc/rc.d/init.d/php-fpm
[root@svr5 fpm]# chmod +x /etc/rc.d/init.d/php-fpm
[root@svr5 fpm]# chkconfig --add php-fpm
[root@svr5 fpm]# service php-fpm start
[root@svr5 fpm]# ps aux | grep php-fpm
步骤二:修改Nginx配置文件并启动服务
[root@svr5 ~]# vim /usr/local/nginx/conf/nginx.conf
location / {
root html;
index index.php index.html index.htm;
}
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME
d
o
c
u
m
e
n
t
r
o
o
t
document_root
documentrootfastcgi_script_name;
include fastcgi.conf;
}
[root@svr5 ~]# /usr/local/nginx/sbin/nginx -s reload
步骤三:创建PHP页面,测试LNMP架构能否解析PHP页面
1)创建PHP首页文档/usr/local/nginx/html/index.php
[root@svr5 ~]# vim /usr/local/nginx/html/index.php
2)客户端使用浏览器访问服务器PHP首页文档,检验是否成功:
[root@client ~]# firefox http://192.168.4.5