1、实验需求:
    1) nfs server导出/data/application/web,在目录中提供wordpress;
        (2) nfs client挂载nfs server导出的文件系统至/var/www/html;
        (3) 客户端(lamp)部署wordpress,并让其正常访问;要确保能正常发文章,上传图片;
        (4) 客户端2(lamp),挂载nfs server导出的文件系统至/var/www/html;验正其wordpress是否可被访问; 要确保能正常发文章,上传图片;        

2、实验环境:
    1)服务器环境
        Linux服务器操作系统版本:CentOS release 6.7 (Final)
         dns)    IP:    172.16.66.50
        lamp)    IP: 172.16.66.60
        lamp)   IP:172.16.66.70
         nfs)   IP:172.16.66.80
    
    2)测试环境
        WIN7系统客户机):IP:172.16.66.100

3、实验前提:
    1)关闭防火墙和SELinux    
    ~]# service iptables stop
    ~]# sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
    
4、实验过程:



第一部分:
部署主机IP: 172.16.66.50
1. 安装DNS服务器
    
    1.1 安装DNS服务端
# yum install bind -y

    1.2 编辑主配置文件/etc/named.conf
options {
        listen-on port 53 { 172.16.66.50; };    
//      allow-query     { localhost; };
        dnssec-enable no;
        dnssec-validation no;
    
    1.3 编辑/etc/named.rfc1912.zones    
# sed -n '43,46p' /etc/named.rfc1912.zones
zone "yang.com" IN {
    type master;
    file "yang.com.zone";
};


    1.4 建立对应的区域解析库文件(主要记录为A或AAAA记录) 正向
# cat /var/named/yang.com.zone
$TTL 3600
@     IN     SOA     ns1.yang.com. dnsadmin.yang.com. (
            20160721
            1D
            10M
            3H
            2D )
    IN    NS    ns1
ns1    IN    A    172.16.66.50
www     IN    A    172.16.66.60
www1    IN    CNAME    www
www     IN    A    172.16.66.70
www2     IN    CNAME    www
        
    1.5 检查配置文件是否有错误
# named-checkconf

    1.6 检查区域解析库是否有错误
# named-checkzone yang.com /var/named/yang.com.zone

    1.7 修改新建的区域解析库文件属组、属主和权限    
# chgrp named /var/named/yang.com.zone
# chmod o= /var/named/yang.com.zone
    
    1.8 设置named开机启动并启动服务
# chkconfig named on
# service named start
# ss -ntl
    
2 测试dns

    2.1 在主域机器上测试A记录:
# dig -t A www.yang.com @172.16.66.50

第二部分:
部署主机IP: 172.16.66.60
    
1 基本设置
    
    1.1 设置 httpd 主机名 HOSTNAME
echo "HOSTNAME=lamp1" >> /etc/sysconfig/network

    1.2 更新 HOSTS 配置文件 /etc/hosts
# echo "172.16.66.60 www1 www2 " >> /etc/hosts

    1.3 创建软件工具目录
# mkdir /tools
    
    1.4 添加DNS 配置文件 /etc/
# servicename 172.16.66.50

2.安装lamp1环境    

    2.1 yum包安装amp
#yum install httpd php php-mysql mariadb mariadb-server -y
    
    2.2 检查是否成功安装包
# rpm -qa httpd php php-mysql mariadb mariadb-server

    2.3 启动服务
# systemctl start httpd
# systemctl start mariadb    

    2.4 查看服务是否正常启动
# ss -nlt
# ps aux | grep httpd    
# ps aux |grep myslq
                
    2.5 设置开机自动启动
# systemctl enable httpd                
# systemctl enable mariadb

    2.6 检查是否设置成开机自启动
# systemctl is-enabled httpd
# systemctl is-enabled mariadb
    
    2.7 创建配置文件备份目录
# mkdri ~/confbak

    2.8 备份配置文件到指定目录中
# cp -r /etc/httpd/* ~/confbak/

    2.9 一个虚拟主机提供/etc/httpd/conf.d/www1.conf            
<VirtualHost 172.16.66.60:80>
    Servername www1
    DocumentRoot /data/vhosts/www1
    ErrorLog  logs/www1-error_log
    CustomLog logs/www1-access_log combiend
    <Directory "/data/vhosts/www1">
        Options None
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>

3.创建和配置数据库

    3.1 登录数据库
~]# mysql -uroot -p

    3.2 为bolg创建数据库名为:wordpress
MariaDB [(none)]> CREATE DATABASE wordpress;

    3.3 查数据库是否创建成功
MariaDB [(none)]> SHOW DATABASES;        
    
    3.4 授权用户、创建账号和密码;    
MariaDB [(none)]> GRANT ALL ON wordpress.* TO liyang@'172.16.%.%' IDENTIFIED BY 'liyang';
Query OK, 0 rows affected (0.00 sec)        


4.挂载nfs服务器

    4.1 客户端挂载 (临时挂载)
# mount -t nfs 172.16.66.80:/data/application/web /var/www/html/
    
    4.2 查看挂载
# df -Th    

    4.3 开机自动挂载
echo " mount -t nfs 172.16.66.80:/data/application/web /var/www/html/" >> /etc/rc.d/init.d

第三部分:    
部署主机IP: 172.16.66.70
    
1 基本设置
    
    1.1 设置 httpd 主机名 HOSTNAME
echo "HOSTNAME=lamp1" >> /etc/sysconfig/network

    1.2 创建软件工具目录
# mkdir /tools
    
    1.3 添加DNS 配置文件 /etc/
# servicename 172.16.66.50

2.安装ap2环境    

    2.1 yum包安装ap
#yum install httpd php php-mysql -y
    
    2.2 检查是否成功安装包
# rpm -qa httpd php php-mysql

    2.3 启动服务
# systemctl start httpd

    2.4 查看服务是否正常启动
# ss -nlt
# ps aux | grep httpd    
            
    2.5 设置开机自动启动
# systemctl enable httpd                

    2.6 检查是否设置成开机自启动
# systemctl is-enabled httpd
    
    2.7 创建配置文件备份目录
# mkdri ~/confbak

    2.8 备份配置文件到指定目录中
# cp -r /etc/httpd/* ~/confbak/

    2.9 一个虚拟主机提供/etc/httpd/conf.d/www2.conf            
<VirtualHost 172.16.66.70:80>
    Servername www1
    DocumentRoot /data/vhosts/www1
    ErrorLog  logs/www2-error_log
    CustomLog logs/www2-access_log combiend
    <Directory "/data/vhosts/www1">
        Options None
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>

3.挂载nfs服务器

    3.1 客户端挂载 (临时挂载)
# mount -t nfs 172.16.66.80:/data/application/web /var/www/html/
    
    3.2 查看挂载
# df -Th    

    3.3 开机自动挂载
echo " mount -t nfs 172.16.66.80:/data/application/web /var/www/html/" >> /etc/rc.d/init.d     

第二部分
部署主机IP: 172.16.66.80

1.搭建NFS服务器    

    1.1 创建nsf共享目录
# mkdir /data/application/web -pv

    1.2 创建用户--> 注意:nfs客户端和服务端id要一致
# useradd -r -u 48 cetnos
    
    1.3 设置共享目录属主和属组
# setfacl -m u:cetnos:rwx /data/application/web

    1.4 创建nfs共享 /etc/exports
/data/application/web 172.16.0.0/16(rw,async,no_root_squash)

    1.4 查看共nfs共享
# showmount -e
    
2.部署站点目录 wordpress

    2.1 解压wordpress包
tools]# unzip wordpress-4.3.1-zh_CN.zip

    2.2 拷贝到nfs共享目录
# cp wordpress /data/application/web

    2.3 改名wordpress配置文件为wp-config.php
]# cp wp-config-sample.php wp-config.php
    
    2.4 修改wp-config.php文件连接数据库
~]# sed -n '22,38p' /data/vhosts/www1/wordpress/wp-config.php
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');

/** MySQL数据库用户名 */
define('DB_USER', 'admin');
 
/** MySQL数据库密码 */
define('DB_PASSWORD', 'admin');

/** MySQL主机 */
define('DB_HOST', '172.16.66.80');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
    
第五部分

1.测试
    
    1.1 访问A主机:172.16.66.60
http://www.yang.com/wordpress/index.php

    1.2 访问B主机:172.16.66.70
http://www.yang.com/wordpress/index.php

    1.3 可以正常访问,可上传图片和发文章!!---实验完成。