[TOC]
文章目录
一、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 "<h1>Success!!</h1>";
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架构已经搭建成功了。
来源:51CTO
作者:wx5d8a05337d6b9
链接:https://blog.51cto.com/14557584/2462601