iuuuoi 发表于 2017-1-3 13:14:49

Centos6部署lamp: httpd2.4+fpm模式

系统: Centos6
httpd版本: 2.4 使用event工作模式
php版本: 5.4.26
mariadb版本: 5.5.46
xcache版本: 3.0.3

httpd:   192.168.1.101
mariadb:192.168.1.102
php:      192.168.1.103

安装顺序: php最后安装

注意事项:
1.在httpd2.2上使用fcgi功能,需要额外打补丁

一、安装httpd2.4:
在192.168.1.101上操作

1.    准备源码包


2.    安装所需环境
yum groupinstall -y"Development tools" "Server Platform Development"
yum install -y pcre-devel

3.    安装apr
①   安装apr
tar -xjvf apr-1.5.0.tar.bz2
cd apr-1.5.0
./configure --prefix=/usr/local/apr
make & make install

②   安装apr-util
tar -xjvfapr-util-1.5.3.tar.bz2
cd apr-util-1.5.3
./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr
//指定apr安装路径
make && make install

4.    安装httpd2.4

tar -xjvf httpd-2.4.9.tar.bz2
cd httpd-2.4.9

./configure --prefix=/usr/local/apache--sysconf=/etc/httpd24--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
//指定apr路径,启用大多数模块(可根据需要选择),使httpd默认使用event工作模式

make && make install

5.    后续工作
vim/etc/profile.d/http24.sh      //添加环境变量

. /etc/profile.d/http24.sh         //加载环境变量

ln -s/usr/local/apache/include/ /usr/include/httpd24      //链接头文件

echo "MANPATH/usr/local/apache/man/" >> /etc/man.config    //添加man文档路径

cp /etc/rc.d/init.d/httpd/etc/rc.d/init.d/httpd24      
vim /etc/rc.d/init.d/httpd24         //配置服务脚本


vim/etc/httpd24/httpd.conf          //修改httpd的pid路径

chkconfig--add httpd24
chkconfig--level 35 httpd24 on          //配置开机启动

servicehttpd24 start             //启动httpd


二、安装mariadb:
在192.168.1.102上操作
1.    准备源码包


2.    准备mysql组和用户
groupadd -r -g 306 mysql
useradd -r -g mysql -u 306 mysql

3.    部署mariadb
tar-xzvf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
ln -s/usr/local/mariadb-5.5.46-linux-x86_64/ /usr/local/mysql   
//便于以后升级版本用

chown -R root:mysql/usr/local/mysql/*      //修改权限


4.    初始化数据库
mkdir-p /mydata/data
chown mysql:mysql/mydata/data/         //准备数据库存放目录

/usr/local/mysql/scripts/mysql_install_db--user=mysql --basedir=/usr/local/mysql--datadir=/mydata/data/
//指定mariadb目录和数据库存放目录

5.    准备配置文件
mkdir/etc/mysql
cp/usr/local/mysql/support-files/my-large.cnf /etc/mysql/my.cnf
//复制模板,可根据需求选择
vim /etc/mysql/my.cnf


6.    后续工作
vim/etc/profile.d/mysqld.sh         //添加环境变量

. /etc/profile.d/mysqld.sh         //加载环境变量

echo '/usr/local/mysql/lib/' >/etc/ld.so.conf.d/mysqld.conf   //添加库路径
ldconfig                  //加载库路径

ln -s /usr/local/mysql/include/mysql/ /usr/include/mysqld

echo 'MANPATH /usr/local/mysql/man/' >>/etc/man.config    //添加man文档路径

cp /usr/local/mysql/support-files/mysql.server/etc/rc.d/init.d/mysqld//复制服务脚本
chkconfig --add mysqld
chkconfig mysqld on         //设置开机启动

service mysqld start          //启动服务

7.    安全初始化
/usr/local/mysql/bin/mysql_secure_installation










三、安装PHP:
在192.168.1.103上操作
1.    准备源码包


2.    安装所需环境
yumgroupinstall -y "Development tools" "Server PlatformDevelopment"
yum install -y bzip2-devel libmcrypt-devel libxml2-devel

3.    准备mysql库
tar-xzvf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
mv /usr/local/mariadb-5.5.46-linux-x86_64//usr/local/mysql

注:
可以使用yum install -y php-mysql来安装所需mysql库,编译安装php时,不要指定mysql的具体路径即可


4.    安装PHP
tar -xjvf php-5.4.26.tar.bz2
cd php-5.4.26

./configure--prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir--with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml--enable-sockets --enable-fpm --with-mcrypt--with-config-file-path=/etc/php--with-config-file-scan-dir=/etc/php/php.d--with-bz2
//启用fpm(即fcgi)

make -j 4 && makeinstall    //使用4线程编译,能提高速度

5.    配置php
mkdir -p /etc/php/php.d      //准备目录存放配置文件
cpphp-5.4.26/php.ini-production /etc/php/php.ini   //复制源码包中的配置文件

cp/usr/local/php5/etc/{php-fpm.conf.default,php-fpm.conf}
//复制php-fpm配置文件
vim/usr/local/php5/etc/php-fpm.conf






6.    后续工作
vim /etc/profile.d/php5.sh      //添加PATH路径

. /etc/profile.d/php5.sh      //加载环境变量


cpphp-5.4.26/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm//复制服务脚本
vim /etc/rc.d/init.d/php-fpm   //修改pid路径

chmod +x/etc/rc.d/init.d/php-fpm         //添加执行权限
chkconfig --add php-fpm
chkconfig php-fpm on               //配置开机启动


service php-fpm start         //启动服务





四、配置httpd:
在192.168.1.200上操作
cp/etc/httpd24/httpd.conf{,.bak}   //先备份
vim /etc/httpd24/httpd.conf





httpd -t      //检查httpd配置
service httpd24 reload       //重载配置


六、 添加虚拟主机:
1.添加虚拟主机
vim /etc/httpd24/httpd.conf


vim/etc/httpd24/extra/httpd-vhosts.conf


vim/etc/httpd24/extra/test.conf


2. 准备测试页面(httpd服务器和php服务器都需要创建)
mkdir -p /mydata/www/
vim /mydata/www/index.php


3.测试



七、 整合xcache:
在php服务器上操作

[*]1.    准备源码包



2.    安装
tar -xjvf xcache-3.0.3.tar.bz2

cd xcache-3.0.3
/usr/local/php/bin/phpize      //生成configure


./configure --enable-xcache --with-php-config=/usr/local/php5/bin/php-config
//指定php安装路径
make && make install


3.    整合xcache
cp xcache-3.0.3/xcache.ini /etc/php/php.d   //复制xcache配置文件




service php-fpm reload    //重载配置




测试连接mariadb
mysql -uroot -p12345         //mariadb服务器上操作,登录数据库创建用户
CREATE USER 'root'@'%'IDENTIFIED BY '12345';       //创建远程访问权限
FLUSH PRIVILEGES;                  //刷新权限表

vim /mydata/www/db.php         //在php服务器上准备测试页面





注:
1.经测试,httpd服务器上可以没有具体的网页文件,但必须要有相应的网站目录,否则会被forbidden
2.编译安装httpd2.4貌似不支持使用Include *.conf的方式来分割配置文件

页: [1]
查看完整版本: Centos6部署lamp: httpd2.4+fpm模式