存档六月 2021

create_web_基于宝塔Apache批量创建网站.sh

#!/bin/bash
# 批量创建网站  apache 3.2  没有数据库
# mysqldump -uroot -p --databases dedecmsv57utf8sp2 --lock-all-tables --master-data=2 > 1.sql
TEMPLATE=154.85.189.34
dir=/home/www
apache_conf=/www/server/panel/vhost/apache

/www/server/apache/bin/apachectl -t
if [ $? -eq 0 ];then
        true
else
        echo '配置文件有错误 请检查apache配置文件'
        exit 1
fi

chattr -i /data/$TEMPLATE/.user.ini

while read line
do
        if [ -d $dir/$line ];then
                echo -e "\e[1;31m$line 网站已经存在...未创建 $line 网址\e[0m"
                continue
        fi

        if [ -f $apache_conf/$line.conf ];then
                echo -e "\e[1;31m$line 配置文件已经存在...未创建 $line 网址\e[0m"
                continue
        fi

##### 网页目录 ###################################################
        cp -a /data/$TEMPLATE $dir/$line
        sed -i "s/$TEMPLATE/$line/g" $dir/$line/.user.ini
        chattr +i $dir/$line/.user.ini

##### 配置文件 ###################################################
        cp -a /data/$TEMPLATE.conf $apache_conf/$line.conf
        sed -i "s/$TEMPLATE/$line/g" $apache_conf/$line.conf
        touch /www/server/panel/vhost/rewrite/$line.conf
        echo -e "\e[1;32m已经创建 $line 网站\e[0m"

##################################################################

done < /data/url
/www/server/apache/bin/apachectl restart

##################################################################
#删除上面自动创建的网址 保存为del.sh
#!/bin/bash
# 删除 create.sh 脚本 自动 创建的 网站
#TEMPLATE=154.85.189.34
#dir=/home/www
#apache_conf=/www/server/panel/vhost/apache
#
#while read line
#do
#        chattr -i $dir/$line/.user.ini
#        rm -rvf $dir/$line
#        rm -rvf $apache_conf/$line.conf
#        rm -rvf /www/server/panel/vhost/rewrite/$line.conf
#        echo "已经删除 $line 网站"
#done < /data/del

check_web_status_网址状态检查.sh

#!/bin/bash
# 检测网页是否正常 状态码是否为200
# 使用Telegram发送异常主机
# Telegram 需要申请机器人 具体请参阅zabbix 文档有关telegram的讲解
# 复制到/data/shell/目录下 mkdir -p /data/shell/web_url.txt 创建域名文件
# web_url.txt 被检测的网址放到里面即可
# www.baidu.com 
# www.qq.com
# 不加参数 执行 函数aa中的命令  加任何参数则执行 函数bb中的命令
# crontab -e 里面添加 01 20 * * * /data/shell/check_web_status.sh aaaa & \\ 每天晚上8点 发送所有
# crontab -e 里面添加 */10 * * * * /data/shell/check_web_status.sh &      \\ 每十分钟检测发送异常网址

Token='1717617034:AAGLvDIL_0CVu7QyTCDpyGxUHtIMFue7Huo9'
ChatID='-10014439319089'
source /etc/profile

function aa {
while read line
do
    web_status=`curl -L -I --connect-timeout 20 -m 30 -o /dev/null -s -w %{http_code}"\n" $line`

    if [ $web_status -eq 200 ];then
	true
	#curl -X GET "https://api.telegram.org/bot$Token/sendMessage" -d "chat_id=$ChatID &text=$line 网址状态正常"	
	else
	curl -X GET "https://api.telegram.org/bot$Token/sendMessage" -d "chat_id=$ChatID &text=$line 不能正常访问"
    fi

done < /data/shell/web_url.txt

}

function bb {

while read line
do
    web_status=`curl -L -I --connect-timeout 20 -m 30 -o /dev/null -s -w %{http_code}"\n" $line`

    if [ $web_status -eq 200 ];then
	curl -X GET "https://api.telegram.org/bot$Token/sendMessage" -d "chat_id=$ChatID &text=$line 网址状态正常"	
	else
	curl -X GET "https://api.telegram.org/bot$Token/sendMessage" -d "chat_id=$ChatID &text=$line 不能正常访问"
    fi

done < /data/shell/web_url.txt

curl -X GET "https://api.telegram.org/bot$Token/sendMessage" -d "chat_id=$ChatID &text=所有域名状态检查完毕"

}

if [ -z $1 ];then
    echo "aaa"
    aa
else
    echo "bbb"
    bb
fi