前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apache自动化安装脚本

Apache自动化安装脚本

作者头像
子润先生
修改2021-07-06 10:52:52
3960
修改2021-07-06 10:52:52
举报
文章被收录于专栏:用户8644135的专栏

此脚本是Apache安装脚本,有需要朋友可以参考,脚本内容如下:

系统环境:CentOS 7.4

软件版本:2.4.29

[root@localhost ~]# vim auto_install_apache.sh

代码语言:javascript
复制
#!/bin/bash
#Date:2018-5-20 14:08:55
#Author Blog:
#	https://www.yangxingzhen.com
#Author WeChat:
#	微信公众号:小柒博客
#Author mirrors site:
#	https://mirrors.yangxingzhen.com
#About the Author
#	BY:YangXingZhen
#	Mail:xingzhen.yang@yangxingzhen.com
#Auto Install Apache
source /etc/rc.d/init.d/functions
#Define APR path variables
APR_URL=http://mirrors.yangxingzhen.com/apr
APR_FILES=apr-1.7.0.tar.gz
APR_FILES_DIR=apr-1.7.0
APR_PREFIX=/usr/local/apr
#Define APR-util path variables
APR_UTIL_URL=http://mirrors.yangxingzhen.com/apr-util
APR_UTIL_FILES=apr-util-1.6.1.tar.gz
APR_UTIL_FILES_DIR=apr-util-1.6.1
APR_UTIL_PREFIX=/usr/local/apr-util
#Define PCRE path variables
PCRE_URL=http://mirrors.yangxingzhen.com/pcre
PCRE_FILES=pcre-8.41.tar.gz
PCRE_FILES_DIR=pcre-8.41
PCRE_PREFIX=/usr/local/pcre
#Define Apache path variables
APACHE_URL=http://mirrors.yangxingzhen.com/apache
APACHE_FILES=httpd-2.4.39.tar.gz
APACHE_FILES_DIR=httpd-2.4.39
APACHE_PREFIX=/usr/local/apache
APACHE_INIT_FILE=/etc/init.d/httpd
source /etc/rc.d/init.d/functions
function Install_apr (){
#Install APR
if [ ! -d ${APR_PREFIX} ];then
	yum -y install gcc gcc-c++ wget
	wget -c ${APR_URL}/${APR_FILES}
	tar zxf ${APR_FILES}
	cd ${APR_FILES_DIR}
	./configure --prefix=${APR_PREFIX}
	if [ $? -eq 0 ];then
		make && make install
		action "The APR Install Sussess..." /bin/true
	else
		action "The APR Install Failed..." /bin/false 
		exit 1
	fi
else
	echo -e "\033[31mThe APR already Install...\033[0m"
fi
}
function Install_apr_util (){
#Install APR-util
if [ ! -d ${APR_UTIL_PREFIX} ];then
	yum -y install expat expat-devel
	wget -c ${APR_UTIL_URL}/${APR_UTIL_FILES}
	tar zxf ${APR_UTIL_FILES}
	cd ${APR_UTIL_FILES_DIR}
	./configure --prefix=${APR_UTIL_PREFIX} --with-apr=${APR_PREFIX}
	if [ $? -eq 0 ];then
		make && make install
		action "The APR-util Install Sussess..." /bin/true
	else
		action "The APR-util Install Failed..." /bin/false 
		exit 1
	fi
else
	echo -e "\033[31mThe APR-util already Install...\033[0m"
fi
}
function Install_pcre (){
#Install PCRE
if [ ! -d ${PCRE_PREFIX} ];then
	wget -c ${PCRE_URL}/${PCRE_FILES}
	tar zxf ${PCRE_FILES}
	cd ${PCRE_FILES_DIR}
	./configure --prefix=${PCRE_PREFIX}
	if [ $? -eq 0 ];then
		make && make install
		action "The Pcre Install Sussess..." /bin/true
	else
		action "The Pcre Install Failed..." /bin/false 
		exit 1
	fi
else
	echo -e "\033[31mThe Pcre already Install...\033[0m"
fi
}
function Install_apache (){
#Install Apache
if [ ! -d ${APACHE_PREFIX} ];then
	yum -y install expat expat-devel openssl openssl-devel
	wget -c ${APACHE_URL}/${APACHE_FILES}
	tar zxf ${APACHE_FILES}
	cd ${APACHE_FILES_DIR}
	./configure --prefix=${APACHE_PREFIX} \
	--with-apr=${APR_PREFIX} \
	--with-apr-util=${APR_UTIL_PREFIX} \
	--enable-so \
	--enable-rewrite \
	--enable-ssl \
	--with-pcre=${PCRE_PREFIX} \
	--with-mpm=worker 
	if [ $? -eq 0 ];then
		make && make install
		action "The Apache Install Sussess..." /bin/true
	else
		action "The Apache Install Failed..." /bin/false 
		exit 1
	fi
else
	echo -e "\033[31mThe Apache already Install...\033[0m"
	exit 1
fi
}
function Config_apache (){
#config apache
\cp $APACHE_PREFIX/bin/apachectl /etc/init.d/httpd
chmod o+x /etc/init.d/httpd
echo "ServerName localhost:80" >>${APACHE_PREFIX}/conf/httpd.conf
service httpd start
}
function Config_iptables (){
#iptables(firewalld)、selinux config
SYSTEM_VERSION=`awk -F. '{print $1}' /etc/redhat-release |awk '{print $NF}'`
if [ $SYSTEM_VERSION -eq 6 ];then
	service iptables stop
	chkconfig iptables off
	sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
	setenforce 0
else
	systemctl stop firewalld.service
	systemctl disable firewalld.service
	sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
	setenforce 0
fi
}
function main (){
	Install_apr
	Install_apr_util
	Install_pcre
	Install_apache
	Config_apache
	Config_iptables
}
main

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档