结尾附送安装脚本
1.准备安装包
下载apr-1.5.2、apr-util-1.5.4及httpd-2.4.20源码包http://mirrors.hust.edu.cn/apache//apr/apr-1.5.2.tar.gz
http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.4.tar.gz
http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.20.tar.gz
2.卸载原有的apr,我在安装apache时提示找不到apr,yum提示已经安装,于是直接卸载了重新编译安装
#yum -y remove apr*3.安装apr和apr-util
#tar -zxf apr-1.5.2.tar.gz#cd apr-1.5.2
#./configure --prefix=/usr/local/apr
#make
#make install
#tar -zxf apr-util-1.5.4.tar.gz
#cd apr-util-1.5.4
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
#make
#make install
4.安装pcre
#tar -zxf /install/packages/pcre-8.38.tar.gz#./configure --prefix=/usr/local/pcre
#make
#make install
5.安装apache
#tar -zxf httpd-2.4.20.tar.gz#cd httpd-2.4.20
#./configure --prefix=/usr/local/apache --with-mpm=worker --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache --enable-nonportable-atomics --enable-mods-shared=most --enable-so --enable-rewrite --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
#make
#make install
6.修改配置
#vi /server/apache/conf/httpd.conf添加以下内容:
ServerName localhost:80
7.启动与停止appache
#/usr/local/apache/bin/apachectl -k start#/usr/local/apache/bin/apachectl -k stop
8.将apache做成服务
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd#service httpd start
9.shell脚本
说明:
在根目录下建立文件夹/install
创建文件夹/install/log
创建文件夹/install/packages,并将所需安装包下载后放入其中
创建文件/install/install_php.sh并将以下内容粘贴进去
#chmod u+x /install/install_php.sh
#/install/install_php.sh
#!/bin/sh
#set -e or -o errexit 出错后停止执行
set -o errexit
#定义相关路径
export INSTALL_HOME=/usr/local #安装路径
export PACKAGES_HOME=/install/packages #安装包路径
export INSTALL_LOG=/install/log #安装日志路径
#安装包文件名
export APPACHE_PACKAGES_NAME=httpd-2.4.20.tar.gz
export APR_PACKAGES_NAME=apr-1.5.2.tar.gz
export APR_UTIL_PACKAGES_NAME=apr-util-1.5.4.tar.gz
export PCRE_PACKAGES_NAME=pcre-8.38.tar.gz
exec 1> $INSTALL_LOG/install.log #安装日志
exec 2> $INSTALL_LOG/err.log #警告及错误日志
yum -y install gcc-c++ zlib zlib-devel openssl openssl--devel #pcre pcre-devel
function install_apr()
{
cd $INSTALL_HOME
tar -zxf $PACKAGES_HOME/$APR_PACKAGES_NAME
cd apr-*
./configure --prefix=/usr/local/apr
make
make install
cd $INSTALL_HOME
tar -zxf $PACKAGES_HOME/$APR_UTIL_PACKAGES_NAME
cd apr-util*
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
make
make install
echo "########################################"
echo "finished apr"
echo "########################################"
}
function install_pcre()
{
cd $INSTALL_HOME
tar zxf $PACKAGES_HOME/$PCRE_PACKAGES_NAME
cd $INSTALL_HOME/pcre-*
./configure --prefix=/usr/local/pcre
make
make install
echo "########################################"
echo "finished pcre"
echo "########################################"
}
function install_apache_source()
{
install_apr
install_pcre
cd $INSTALL_HOME
tar -zxf $PACKAGES_HOME/$APPACHE_PACKAGES_NAME
cd $INSTALL_HOME/httpd-*
./configure --prefix=/usr/local/apache2 --with-mpm=worker --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache --enable-nonportable-atomics --enable-mods-shared=most --enable-so --enable-rewrite --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
make
make install
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
#/usr/local/apache2/bin/apachectl -k start
#/usr/local/apache2/bin/apachectl -k stop
echo "########################################"
echo "finished apache"
echo "########################################"
}
function install_software()
{
install_apache_source
echo "########################################"
echo "########################################"
echo "########## filished all ##########"
echo "########################################"
echo "########################################"
}
install_software