shell_一键部署Apache脚本

该脚本详细介绍了如何在Linux环境中通过一键部署的方式安装Apache服务器。包括停用防火墙,设置SELinux为允许状态,下载并编译安装Apache源码,配置服务器监听指定域名和IP,启动并检查Apache服务的状态。最后,脚本会更新hosts文件,并验证Apache服务是否成功启动。
摘要由CSDN通过智能技术生成

一.一键部署Apache

1.将安装Apache所需软件包传到/opt目录下

在这里插入图片描述

#!/bin/bash
read -p "输入域名www.xxx.com:" a
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl


cd /opt/
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
tar jxvf httpd-2.4.29.tar.bz2

mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util

cd /opt/httpd-2.4.29/
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

make && make install

ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/

echo '[Unit]
Description=The Apache HTTP Server      
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target' > /lib/systemd/system/httpd.service
systemctl start httpd.service

cp /etc/httpd.conf{,.bak}
c=`ifconfig | awk 'NR==2{print $2}'`
sed -i "51c Listen $c:80" /etc/httpd.conf.bak
sed -i '52 s/^/#/' /etc/httpd.conf.bak
sed -i '197d' /etc/httpd.conf.bak
sed -i "196a ServerName $a:80" /etc/httpd.conf.bak
cat /etc/httpd.conf.bak > /etc/httpd.conf

httpd -t
cat /usr/local/httpd/htdocs/index.html
systemctl start httpd.service
systemctl restart httpd.service

echo "$c $a" >> /etc/hosts
netstat -anpt | grep 80

if [ $? -eq 0 ];then 
	echo "Apache服务已启动"
else 
	echo 启动失败
	exit 1
fi

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值