当前位置: 首页 > news >正文

使用shell脚本自动安装Apache2.4.35

安装环境Centos7,联网进行安装。
脚本如下:

#!/bin/bash
[ $(id -u) != "0" ] && echo "error,not root user" && exit 1
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/bin:/usr/sbin
which httpd
if [ $? -eq 0 ];then
yum remove 'yum list installed | grep httpd' -y
#移除httpd 在已经安装的软件中搜索httpd 然后卸载
exit 1
fi
if [ ! -d /opt ];then
#检查是/opt是否为目录,不是则创建并进入,是则进入
mkdir /opt && cd /opt
else
cd /opt
fi
echo "是否下载apache(y/n)"
read -p "请输入y/n" cho
case $cho in
y)
echo "正在下载Apache"
wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.35.tar.bz2
wget http://mirrors.hust.edu.cn/apache//apr/apr-1.6.5.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
a=httpd-2.4.35
b=apr-1.6.5
c=apr-util-1.6.1
;;
n)
echo "退出下载"
exit 0
;;
*)
echo "错误退出请输入(y/n)"
;;
esac
if [ $? -eq 0 ];then
tar xjf $a.tar.bz2
tar zxf $b.tar.gz
tar zxf $c.tar.gz
else
echo "下载错误"
exit 1
fi
cp -R $b /opt/$a/srclib/apr
cp -R $c /opt/$a/srclib/apr-util
yum install gcc gcc-c++ pcre pcre-devel zlib-devel expat-devel -y
cd /opt/$a
./configure \
--prefix=/usr/local/httpd \
--enable-deflate \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--disable-cgi
make && make install
grep -v "#" /usr/local/httpd/bin/apachectl > /etc/init.d/httpd
sed -i '1i # description:Apache is a World Wide Web server.' /etc/init.d/httpd
sed -i '1i # chkconfig:2345 85 15' /etc/init.d/httpd
sed -i '1i #!/bin/sh' /etc/init.d/httpd
chmod +x /etc/init.d/httpd
chkconfig --add httpd
chkconfig --level 35 httpd on
ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf

新手上路,请大家多多指点。

转载于:https://blog.51cto.com/13760226/2293803

相关文章:

  • JAVA 同步实现原理
  • Java Agent 学习笔记
  • mysql如何直接查出从1开始递增的数
  • GlassFish新纪元
  • 基于树莓派的桌上足球计分器
  • C# 高级编程03----细节内容
  • mongodb之 oplog 日志详解
  • 动态库空间优化
  • 贝叶斯分类器
  • 【完整教程】新版直播频道上线,马上开始创建你的直播吧!
  • 如何用三个月学会python?
  • JDK11的工具的命令参考
  • MySQL缓存及变量
  • MySQL基础之 索引
  • 2.2 目录及文本文件操作命令
  • “大数据应用场景”之隔壁老王(连载四)
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 2019年如何成为全栈工程师?
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • Flannel解读
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • JavaScript 事件——“事件类型”中“HTML5事件”的注意要点
  • JavaScript 无符号位移运算符 三个大于号 的使用方法
  • leetcode讲解--894. All Possible Full Binary Trees
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • use Google search engine
  • Wamp集成环境 添加PHP的新版本
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 你真的知道 == 和 equals 的区别吗?
  • 普通函数和构造函数的区别
  • 微信支付JSAPI,实测!终极方案
  • 小程序01:wepy框架整合iview webapp UI
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • 在Mac OS X上安装 Ruby运行环境
  • 最近的计划
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • gunicorn工作原理
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • #pragma multi_compile #pragma shader_feature
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (二)c52学习之旅-简单了解单片机
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (四)JPA - JQPL 实现增删改查
  • (一) storm的集群安装与配置
  • (转) Face-Resources