文章目录

一、PHP解析环境

二、PHP配置安装

三、配置及优化FPM模块

四、nginx支持PHP功能配置

五、新建数据库bbs

六、Discuz!社区论坛的部署

上接上篇博客继续搭建LNMP架构,上一篇博客链接:搭建 LNMP 架构 之 nginx配置、MySQL安装(上篇)

一、PHP解析环境

配置网页动静分离,解析PHP,有两种方法可以选择
使用PHP的FPM模块
将访问PHP页面的Web请求转交给Apache服务器去处理
较新版本的PHP已经自带FPM模块,用来对PHP解析实例进行管理、优化解析效率
FastCGI将Http Server和动态脚本语言分离开
Nginx专[ ]处理静态请求,转发动态请求
PHP_ FPM专[门解析PHP动态请求
单服务器的LNMP架构通常使用FPM的方式来解析PHP
PHP-FPM(FastCGI Process Manager: FastCGI进程管理器)
是一个PHPFastCGI 管理器,由于Nginx服务器不能处理动态页面

二、PHP配置安装

1、安装环境依赖包
yum -y install \
libjpeg \ 
libjpeg-devel \
libpng libpng-devel \
libxml2 \
libxml2-devel \
freetype freetype-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel
----------------------------------------------
//参数解释
libjpeg libjpeg-devel //识别jpg图片
libpng lbpng-devel   //识别png图片  
freetype freetype-devel   //字体识别
libxml2  libxml2-devel   //用于xml文件的识别
zlib zlib-devel    //压缩功能
curl curl-devel   //curl支持网页上传、下载
openssl openssl-devel  //身份验证登录
2、挂载共享文件,解压php安装包
cd /abc/LNMP
tar jxvf php-7.1.10.tar.bz2 -C /opt/
3、编译配置
cd /opt/php-7.1.10/
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip
4、make && make install
make && make install
5、配置优化 php 有三个配置文件。
php. ini (核心配置文件) php-fpm.conf (进程服务配置文件) www.conf (扩展配置文件)
//主配置文件
cp php.ini-development /usr/local/php/lib/php.ini
vim /usr/local/php/lib/php.ini

//输入 /default_sock 查找
mysqli.default_socket = /usr/local/mysql/mysql.sock
// 输入 /data.time 查找,把前面的‘ ;’注释符去掉。
date.timezone = Asia/Shanghai

6、验证安装的模块
/usr/local/php/bin/php -m 

三、配置及优化FPM模块

1、复制一份默认模板作为php-fpm的配置文件,再加以修改。
#配置及优化FPM模块
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf

//把注释符号‘;’去掉
pid = run/php-fpm.pid
同样这个php-fpm.d也要复制一份默认模板
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf

2、启动配置
/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
netstat -anpt | grep 9000

3、优化路径。检查进程
ln -s /usr/local/php/bin/* /usr/local/bin
ps aux | grep -c "php-fpm"

四、让 nginx 支持 PHP 功能配置

1、修改nginx的配置文件
vim /usr/local/nginx/conf/nginx.conf
//输入  location ~ \.php$ 查找
location ~ \.php$ {
	    root		html;
            fastcgi_pass	127.0.0.1:9000;
            fastcgi_index	index.php;
            fastcgi_param	SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
	    inclide		fastcgi_params;		
}

2、设置检验网页index.php
vim /usr/local/nginx/html/index.php

//输入:
<?php
phpinfo();
?>

3、开启 nginx 服务
systemctl restart nginx

//测试网页
http://192.168.111.141/index.php

五、新建数据库bbs

下面测试数据库工作是否正常
mysql -u -root -p  	//输入密码 “abc123”登录
/创建一个数据库//
CREATE DATABASE bbs;                  
GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';
GRANT all ON bbs.* TO 'bbsuser'@'localhost' IDENTIFIED BY 'admin123';
//刷新数据库//
mysql>flush privileges;   

//原来的测试页内容更改:
vim /usr/local/nginx/html/index.php            

<?php
$link=mysqli_connect('192.168.111.141','bbsuser','admin123');
if($link) echo "Success!!";
else echo "Faill!!";
?>

systemctl restart nginx

在网页测试“http://192.168.111.141/index.php”

六、Discuz!社区论坛的部署
1、解压安装
cd /abc/LNMP
unzip Discuz_x3.4_SC_UTF8.zip -d /opt
2、授权安装论坛
cd /opt/dir_SC_UTF8/
cp -r upload/ /usr/local/nginx/html/bbs/

cd /usr/local/nginx/html/bbs/

chown -R root:nginx ./config/
chown -R root:nginx ./data/
chown -R root:nginx ./uc_client/
chown -R root:nginx ./uc_server/

chmod -R 777 ./config/
chmod -R 777 ./data/
chmod -R 777 ./uc_client/
chmod -R 777 ./uc_server/
3、在浏览器输入 http://192.168.111.141/bbs/install/index.php 安装

到这里我们的LNMP架构已经搭建成功了。