您的位置:首页 > 理论基础 > 计算机网络

使用nfs共享建立多个httpd服务器

2014-03-27 19:29 435 查看
使用nfs共享建立多个httpd服务器
规划图:



192.168.100.5(mysql,php,nfs三个服务)

安装mysql
1,安装mysql,和mysql-php
yum install "mysql*"
启动mysql
service mysql start

2,授权php使用mysql

# mysql
mysql> create database mydb;
mysql> grant all privileges on mydb.* to user@localhost identified by "redhat";

安装PHP
1,解压源码包:
# tar -xf php-5.4.19.tar.bz2

2,执行./configure
# ./configure --prefix=/usr/local/php --with-mysql --with-openssl --with-mysqli --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2

3,make && make install

4,准备php-fpm服务脚本
cp /usr/local/src/php-5.4.19/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm ***这是php-fpm自带的脚本***
chmod a+x /etc/init.d/php-fpm ***给脚本执行权限***
chkconfig --add php-fpm ***加入到开机自动启动***

5,准备php-fpm配置文件
cp /usr/local/php/etc/php-fpm.conf.default php-fpm.conf
编辑一下这个配置文件改监听端口
listen = 192.168.100.5:9000
6,启动服务
# service php-fpm restart

配置nfs共享
1,建立共享目录
mkdir /www
chmod 777 /www

如果nfs没有装:
yum install rpcbind nfs-utils

2,编辑nfs配置文件
# vim /etc/exports
www 192.168.100.0/24(rw,async)





3,重启服务,检查是否配置成功
# service nfs restart
查看:showmount -e



-------------------------------
192.168.100.8
安装httpd
开发包组
yum groupinstall "Development tools"
yum groupinstall "Server Platform Development"
# yum install pcre-devel -y

编译apache依赖的包

apr 和apr-util要新版的如果有就yum安装没有就源码安装
apr-1.5.0.tar.bz2
apr-util-1.5.3.tar.bz2
源码安装
# tar -xf apr-1.5.0.tar.bz2 -C /usr/local/src/
# tar -xf apr-util-1.5.3.tar.bz2 -C /usr/local/src/
进入解压后的目录执行安装
先安装apr
# ./configure --prefix=/usr/local/apr/
# make
# make install
再安装apr-util
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make
# make install

2, 安装httpd2.4
解压
# tar -xf httpd-2.4.9.tar.bz2 -C /usr/local/src
查看帮助
./configure --help
执行./configure
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event
# make && make install

3, 输出命令
# vim /etc/profile.d/httpd.sh
写入
export PATH=/usr/local/apache/bin:$PATH

4,测试启动
# apachectl start

挂载nfs服务器上的目录
mount -t nfs -o soft,intr 192.168.100.5:/www /www

编辑一个测试页
cd /www/
echo "<? phpinfo() ?>" >index.php

配置httpd:

设置文档根目录
DocumentRoot "/www"



加载代理模块和fcgi模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

配置php类型让httpd识别
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

配置代理
ProxyRequests off ***关闭正向代理***
ProxyPassMatch ^(/.*\.php)$ fcgi://192.168.100.5:9000/www/$1 ***把以.php结尾的文件通过
fcgi协议发送到php服务器***

首页设置
<IfModule dir_module>
DirectoryIndex index.php
</IfModule>

重启服务,查看是否能连到php
# apachectl restart
--------------------------------------
192.168.100.7
同样安装httpd2.4
------------------------------------------




测试
cd /www
下载phpMyAdmin-3.4.10.1-all-languages.tar.bz2
解压:
# tar -xf phpMyAdmin-3.4.10.1-all-languages.tar.bz2
建立链接文件
# ln -sv phpMyAdmin-3.4.10.1-all-languages admin

查看是否能连接:





用user用户登录:




-------------------------

分离mysql数据库



192.168.100.5
1,重新编译php

make clean
rm -rf /usr/local/php

./configure --prefix=/usr/local/php --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd

--with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd
php5.3以后支持的选项,表示mysql不再本机

make && make install

重启服务
service php-fpm restart

cd /www
下载 wordpress-3.3.1-zh_CN.zip
解压:
# unzip wordpress-3.3.1-zh_CN.zip
# cd wordpress
准备配置文件
# cp wp-config-sample.php wp-config.php
编辑配置文件
# vim wp-config.php




----------------------
192.168.100.6

安装mysql数据库
yum install mysql-server mysql

创建一个库并授权
# mysql
mysql> create database mydb;
mysql> grant all on mydb.* to wpuser@192.168.100.5 identified by "redhat";
mysql> \q

-------------------------
在客户机测试:


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php apache nfs