一、实验要求

在三台不同的CentOS 7主机上用rpm包快速部署LAMP

大概结构是httpd + php-fpm + mysql 结构的

设置两个虚拟主机www1,www2

www1虚拟主机提供phpMyAdmin

www2虚拟主机提供wordpress

二、实验准备

    主机IP172.16.28.70安装 php-fpm

    主机IP172.16.28.71安装 httpd

  主机IP172.16.28.72 安装mariadb-server

三、操作

1)在主机IP172.16.28.71操作

1.安装配置httpd,创建虚拟主机

1.1安装httpd

    # yum -y install httpd

1.2启动服务

    # systemctl starthttpd.service

1.3验证启动成功

    # systemctl status httpd

    # ss -tnl 查看监听80端口

    # ps aux

1.4查看httpd启动的mpm并发响应模型

    # httpd -M | grep mpm

1.5可以看到httpd-2.4默认编译安装了fcgi模块

     # httpd -M | grep fcgi

1.6修改httpd配置文件,创建虚拟主机www1www2

    www1的配置文件/etc/httpd/conf.d/www1.conf在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress
www2的配置文件/etc/httpd/conf.d/www2.conf

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_lamp_02

 1.7创建DocumentRoot目录

  # mkdir -pv/data/vhosts/www{1,2}        

  # vim/data/vhosts/www1/index.php

       welcome tomagedu,this is www1

  # vim/data/vhosts/www2/index.php

       welcome tomagedu,this is www2

2.为虚拟主机www1提供wordpress(个人博客系统程序)

2.1得到wordpress解压缩移到虚拟主机的www1的目录下

  # unzipwordpress-4.3.1-zh_CN.zip

  # mv wordpress/data/vhosts/www1

2.2创建软连接

    (创建软链接,方便升级,可以写脚本自动实现,如果失败的也方便回滚)

   # ln -sv wordpress wp

   注:如果要通过软连接访问主机,那么要在虚拟主机的配置文件中修改如下Option FollowSymLinks                  

2.3提供配置文件

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress_03

3.为虚拟主机www2提供phpMyAdmin(管理mysql的,基于web接口的图形管理工具)

3.1获取源码包解压缩,移动到虚拟主机的www2的目录下

  # unzipphpMyAdmin-4.3.5-all-languages.zip

  # mv phpMyAdmin-4.3.5/data/vhosts/www2

3.2创建软连接

  # ln -sv phpMyAdmin-4.3.5pma

3.3提供配置文件

  # cp config.sample.inc.phpconfig.inc.php

  # vim config.inc.php

      添加一个随机码openssl rand –hex 10 

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress_04

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_phpMyAdmin_05

2)在主机IP172.16.28.72操作

1.1安装mariadb

    # yum -y installmariadb-server

1.2启动服务

   # systemctl startmariadb.service

1.3验证服务启动

   # systemctl status mariadb.service

   # ss -tnl 验证监听3306端口

1.4mariadb增加安全性

  # mysql_secure_installation

     设置密码 654321

     是否移除匿名登录移除

     是否支持远程登录支持

     是否删除测试的database

     是否刷新

1.5创建用户和数据库

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_lamp_06

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_phpMyAdmin_07

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_phpMyAdmin_08

由于wordpress(个人博客系统程序),要使用mysql数据库,先生成wordpress要使用的数据库以及用户名和密码

3)在主机IP172.16.28.70操作

1.安装并配置php-fpm

1.1安装php-fpm

安装之前确保php没有安装,安装php将自己做成了模块,php-fpm编译成独立的服务器其互不相容

     # rpm -q php

     # yum install php-fpm php-mysqlphp-gd php-mbstring php-xml

     # rpm -ql php-fpm

  1.2修改php-fpm配置文件

    # vim /etc/php-fpm.d/www.conf

       listen = 172.16.28.70:9000

       listen.allowed_clients =172.16.28.71

      监听地址和端口,监听httpd服务器所在主机的IP地址。查看user,group进程是以谁的身份运行,缺少session的目录,因此需要添加session目录,并且为其更改属组     

1.3根据配置文件,创建目录更改属组

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_phpMyAdmin_09

1.4重启服务

   # systemctl start php-fpm.service

      启动php-fpm服务

1.5验证服务启动

    # systemctl statusphp-fpm.service

    # ss -tnl 查看9000号端口打开

    # ps aux | grep php-fpm 查看php-fpm

2.部署wordpress部署同上,不在赘述

3.部署phpMyAdmin部署同上,不在赘述

(4)测试

提供php的测试页并且测试mysql连接是否正常

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress_10

5)浏览器查看部署

虚拟主机www1的测试结果

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_lamp_11

虚拟主机www2的测试结果

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress_12

5)验证部署结果

虚拟主机www1部署的wordpress

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_wordpress_13

虚拟主机www2部署的phpMyAdmin

在三台不同的CentOS 7主机上用rpm包快速部署LAMP_phpMyAdmin_14

四、总结

这个构建关键在于,搞清楚LAMP这个平台的工作机制,如何将三台主机连接在一起,监听的地址和端口