搭建 LNMP 架构 之 PHP 配置和论坛平台(下篇)


上接上篇博客继续搭建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 lbpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-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 /mnt/LNMP-C7/
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
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的配置文件,再加以修改。

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 -natp | 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$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }

在这里插入图片描述
2、设置检验网页index.php

cd /usr/local/nginx/html/   //先备份index.html
mv index.html index.html.bak
cp index.html.bak index.php

vim index.php
<?php
phpinfo();
?>

3、开启 nginx 服务

systemctl restart nginx
//在网页测试“http://192.168.220.134/index.php”

在这里插入图片描述

五、新建数据库bbs

下面测试数据库工作是否正常

mysql -uroot -p     //登录MySQL
//新建bbs库,并设置密码
CREATE DATABASE bbs;
GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';
GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';

flush privileges;  //更新
vim /usr/local/nginx/html/index.php
##原来的测试页内容更改如下
<?php
$link=mysqli_connect( '192.168.220.134','bbsuser','admin123' );
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>

在网页测试“http://192.168.220.134/index.php”
在这里插入图片描述

六、Discuz!社区论坛的部署

1、解压安装

cd /mnt/LNMP-C7
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.220.134/bbs/install/index.php 安装
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到这里我们的LNMP架构已经搭建成功了。

发布了69 篇原创文章 · 获赞 32 · 访问量 3428

猜你喜欢

转载自blog.csdn.net/qq_28361541/article/details/103664292
今日推荐