实验所需要环境:
第一台centos7 | 部署httpd服务 | 192.168.1.1 |
第二台centos7 | 部署DNS服务 | 192.168.1.2 |
第三台centso7 | 部署nfs服务 | 192.168.1.3 |
第四台centos7 | 部署php服务 | 192.168.1.4 |
第五台centso7 | 用于客户端验证 | 192.168.1.5 |
实验前配置:
相同的网段,区段,全部都关闭防火墙 本次实验使用的是192.168.1.*
实验步骤:
第一台:安装以及配置httpd:
IP地址:192.168.1.1
解压安装包
tar -zxvf httpd-2.4.25.tar.gz -C /usr/src/
安装所需要的依赖包
yum -y install apr* openssl* pcre* zlib*
安装对应的模块
cd /usr/src/httpd-2.4.25/
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-cgj --enable-charset-lite
编译安装
make && make install
路径优化
ln -s /usr/local/httpd/bin/* /usr/local/bin/
启动文件
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
编辑启动文件
vim /etc/init.d/httpd
第二行#号后面添加: chkconfig:35 22 22
添加到系统命令中并且设置自启动
chkconfig --add httpd
chkconfig httpd on
启动httpd
systemctl start httpd
编辑httpd配置文件
vim /usr/local/httpd/conf/httpd.conf
找到:#LoadModule proxy_module modules/mod_proxy.so 取消前面#号
找到:#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so 取消前面#号
修改前:
修改后:
修改前:
修改后:
修改前:
修改后:
重启httpd:systemctl restart httpd
第二台 安装DNS
IP地址192.168.1.2
yum安装DNS :yum -y install bind
vim /etc/named.conf
效果图:显示修改的
正向配置:vim /etc/named.rfc1912.zones
效果图
cd /var/named/
cp -p named.localhost ygz.com.zone
vim ygz.com.zone
重启dns:systemctl restart named
第三台nfs服务:
IP地址192.168.1.3
- 在/下面创建一个名为httpd的目录
- 在httpd目录下面创建一个index.html的文本,内容随便写
- Vim /etc/exports
vim /etc/sysconfig/nfs
配置nfs的主要配置文件,手动设置端口号 随便找个空白地方写就可以了
必须先启动rpcbind然后在启动nfs
systemctl start rpcbind
systemctl start nfs
权限给够
chmod 777 /httpd/
在httpd服务上挂载:(第一台)
mount -t nfs 192.168.1.3:/httpd /usr/local/httpd/htdocs/
查看:
第五台,客户端验证:
IP地址192.168.1.5
打开网卡配置文件,除了配置IP地址,还要设置dns,
重启网卡,验证:
firefox www.ygz.com
第四台 安装php:
IP地址为192.168.1.4
将对应的安装包拖到 /root 下面
解压安装包
tar -zxvf /root/libmcrypt-2.5.8.tar.gz -C /usr/src/
tar -zxvf /root/mhash-0.9.9.9.tar.gz -C /usr/src/
tar -zxvf /root/mcrypt-2.6.8.tar.gz -C /usr/src/
tar -zxvf /root/php-5.5.38.tar.gz -C /usr/src/
进入libmcypt的目录下面,检查安装环境,编译安装,将libmcrypt嵌入系统内核。 做软连接将/usr/local/lib/libmcrypt下面的所有东西都链接到/usr/lib/下面
cd /usr/src/libmcrypt-2.5.8/
./configure && make && make install
ln -s /usr/local/lib/libmcrypt.* /usr/lib/
进入第二个安装包目录,检查安装环境,编译安装,把mhash嵌入系统内核,做软连接
cd /usr/src/mhash-0.9.9.9/
./configure && make && make install
ln -s /usr/local/lib/libmhash* /usr/lib
解压第三个安装包,进入目录,安装插件,防止configure找不到mcrypt
检查环境,编译安装,把软件嵌入系统内核中
cd /usr/src/mcrypt-2.6.8/
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
./configure && make && make install
进入php目录,安装18个模块 (首先安装依赖包)
yum -y install libxml2*
cd /usr/src/php-5.5.38/
./configure --prefix=/usr/local/php5 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --enable-fpm --enable-sysvshm --enable-mbstring --with-libxml-dir=/usr --enable-xml --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-maintainer-zts
模块安装完毕后,最后显示👇面图片为正确
然后编译安装,嵌入系统
make && make install
useradd -M -s /sbin/nologin php
cp /usr/src/php-5.5.38/php.ini-production /etc/php.ini
vim /etc/php.ini
(1)将short_open_tag = Off 改为short_open_tag = On
(2)启用字符集编码 吧前面的;去掉
cp /usr/src/php-5.5.38/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf
vim /usr/local/php5/etc/php-fpm.conf
20. mkdir /var/www
21.挂载 类型为nfs 通过远程挂载到192.168.1.2目标主机下的/httpd目录,并且与本主机的/var/www/的目录进行绑定
mount -t nfs 192.168.1.2:/httpd /var/www/
22.重启php
systemctl restart php-fpm
23.打开nfs那一台
Vim /httpd/index.php
全部重启1.httpd,2.dns,3.rpcbind,nfs,4,php-fpm
24.验证: 测试httpd与php链接
开一台win,相同区段,192.168.1.3 nds:192.168.1.1
25,再开一台centos 进入mysql数据库,设置所有用户都可以访问 (不会安装MySQL的可以看我的安装msyql文章)
IP地址为192.168.1.20 同一区段
grant all on *.* to 'root'@'%' identified by '123.com';
26.打开nfs那一台
vim /httpd/index.php
验证: httpd与mysql链接
打开win访问www.303.com