Centos7部署LNMP平台与应用

构建LNMP网站平台

不会安装Nginx服务基础的看这个:
https://blog.csdn.net/weixin_46902396/article/details/108823679
不会安装Mysql服务的看这个:
https://blog.csdn.net/weixin_46902396/article/details/108171060
如果在安装过程中出现磁盘不足,看这个来进行扩容:
https://blog.csdn.net/weixin_46902396/article/details/108290392
在这里插入图片描述

一、安装PHP解析环境

实验要用的源码包:
https://pan.baidu.com/s/1jON0rmo21Xx74Qv_8_ZHHg
提取码:ycbb

1.编译安装PHP

[root@localhost ~]# yum -y install gd libxml2-devel libjpeg-devel libpng-devel mysql gcc*
[root@localhost ~]# tar zxf php-5.5.38.tar.gz
[root@localhost php-5.5.38]# ./configure --prefix=/usr/local/php5 \
--with-gd \
--with-zlib \
--with-mysql\
--with-mysqli\
--with-config-file-path=/usr/local/php5\
--enable-mbstring\
--enable-fpm\
--with-jpeg-dir=/usr/lib
[root@localhost php-5.5.38]# make && make install

2.安装后的调整

[root@localhost php-5.5.38]# cp php.ini-development /usr/local/php5/php.ini
[root@localhost php-5.5.38]# ln -s /usr/local/php5/bin/* /usr/local/bin/
[root@localhost php-5.5.38]# ln -s /usr/local/php5/sbin/* /usr/local/sbin/

3.安装ZendGuardLoader

[root@localhost ~]# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz 
[root@localhost ~]# cd zend-loader-php5.5-linux-x86_64/
[root@localhost zend-loader-php5.5-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php/
[root@localhost zend-loader-php5.5-linux-x86_64]# vi /usr/local/php5/php.ini

在第最后一行添加:

zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable= 1

二、配置Nginx支持PHP环境

1.启用php-fpm进程

[root@localhost ~]# cd /usr/local/php5/etc/
[root@localhost etc]# cp php-fpm.conf.default php-fpm.conf
[root@localhost etc]# useradd -M -s /sbin/nologin php
[root@localhost etc]# vim php-fpm.conf
1.找到pid = run/php-fpm.pid  将前面";"去掉
2.找到运行用户和运行组,都改为php
还有一些项,改不改都行:
pm.start_servers = 2     (启动时开启的进程数)
pm.min_spare_servers = 1 (最少空闲进程数)
pm.max_spare_servers = 3 (最多空闲进程数)
pm.max_children = 5      (最多子进程数)

在这里插入图片描述
在这里插入图片描述

[root@localhost etc]# /usr/local/sbin/php-fpm    (开启服务)
[root@localhost etc]# netstat -anpt | grep php-fpm   (端口号9000

在这里插入图片描述
修改前面的Nginx脚本,以便在启动/停止Nginx服务时php-fpm进程也自动启动停止

[root@localhost ~]# vim /etc/init.d/nginx
#!/bin/bash
#chkconfig: - 99 20
#description: Nginx Server Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
PROG_FPM="/usr/local/sbin/php-fpm"
PIDF_FPM="/usr/local/php5/var/run/php-fpm.pid"
case "$1" in
start)
  $PROG
  $PROG_FPM
  ;;
stop)
  kill -s QUIT $(cat $PIDF)
  kill -s QUIT $(cat $PIDF_FPM)
;;
restart)
  $0 stop
  $0 start
  ;;
reload)
  kill -s HUP $(cat $PIDF)
  ;;
status)
  [ -f $PID ] &> /dev/null
       if [ $? -eq 0 ]
          then
          netstat  -anpt | grep nginx
       else
          echo "Nginx is not running."
        fi
  ;;
*)
  echo "Usage: $0 {start|stop|restart|reload|status}"
esac
exit 0
[root@localhost ~]# netstat -anpt | egrep 'nginx|php'
[root@localhost ~]# systemctl stop nginx
[root@localhost ~]# netstat -anpt | egrep 'nginx|php'

在这里插入图片描述
因此,一旦启用或关闭Nginx服务,php-fpm程序也会随之启动或关闭,不需要额外再启用或关闭

2.配置Nginx支持PHP解析

有两种方法:
1:转交给其他web服务器
location ~ .php$ {
proxy_pass http://目标主机ip:80;
}
2:调用本机的php-fpm进程

本次实验使用第二种方法:
在这里插入图片描述

[root@localhost ~]# nginx -t   (检查配置是否正确)
[root@localhost ~]# systemctl start nginx   (启用Nginx服务)
[root@localhost ~]# netstat -anpt | egrep 'nginx|php'  (查看端口运行状态)

在这里插入图片描述

3.PHP页面的测试

[root@localhost ajbm]# vim /var/www/ajbm/test.php
<?php
phpinfo();
?>
[root@localhost ajbm]# systemctl restart nginx

在这里插入图片描述

[root@localhost ~]# vim /var/www/ajbm/test2.php
<?php
$link=mysqli_connect('localhost','root','123');
if($link)
echo "恭喜你,数据库连接成功!";
mysqli_close($link);
?>
[root@localhost ~]# systemctl restart nginx

在这里插入图片描述

三、在LNMP平台部署Web网站
1.部署网站程序代码
[root@localhost ~]# yum -y install unzip
[root@localhost ~]# unzip Discuz_X3.3_SC_UTF8.zip 
[root@localhost ~]# mv upload/ /var/www/bdqn/bbs
[root@localhost ~]# chown -R php:php /var/www/bdqn/bbs
2.创建数据库
[root@localhost ~]# mysql -u root -p123
mysql> create database bbs;
mysql> grant all on bbs.* to runbbs@localhost identified by 'bbs@123456';

在这里插入图片描述

3.安装Web网站

Win7上访问:http://www.ajbm.com/bbs/install/index.php
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.访问Web网站

http://www.ajbm.com/bbs
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_46902396/article/details/108830660