jiaob

写一个脚本,批量生成10个虚拟主机配置:
     /etc/httpd/conf.d/vhosts#.conf
      主机名:www#
      目录:/data/vhosts/www#
      访问日志:logs/www#-access_log
      
     接受命令行参数,作为命令和主机名传递;
      
     使用函数:
      列出:list [-a|vhost_name]
      创建:create vhost_name
      删除:delete [-a|vhost_name]

#!/bin/bash
IP=$(ifconfig | head -n 3 | grep "inet addr" | awk -F: ‘{printf $2}‘ |awk ‘{printf $1}‘)
cp /etc/httpd/conf/httpd.conf{,.bak}
sed -i "[email protected]*\<NameVirtualHost\>.*@NameVirtualHost $IP:[email protected]:"   /etc/httpd/conf/httpd.conf

Virtualhost () {
  echo "<VirtualHost $IP:80>" > /etc/httpd/conf.d/vhost$1.conf
  echo -e "\tSerName www$1.magedu.com" >> /etc/httpd/conf.d/vhost$1.conf
  echo -e "\tDocumentRoot /data/vhost/www$1" >> /etc/httpd/conf.d/vhost$1.conf
  echo "<VirtualHost>" >>  /etc/httpd/conf.d/vhost$1.conf

}
 Hostfile () {
 mkdir -p /data/vhost/www$1
 touch  /data/vhost/www$1/index.html
 echo "www$1" > /data/vhost/www$1/index.html

}
function del_vhost {
        if [ -e "/etc/httpd/conf.d/vhost$1.conf" ]
        then
                rm -f /etc/httpd/conf.d/vhost$1.conf
        else
                echo "vhost$1 is not exist."
                exit 3;
        fi
  }

function cur_vhost {
        j=0;
       
        if [ $i == "/etc/httpd/conf.d/welcome.conf"  -o  $i == "/etc/httpd/conf.d/ssl.conf"  -o  $i == "/etc/httpd/conf.d/manual.conf" ]
        then
             continue
       else
               vhosts[$j]=$i
         fi
               let j++

vhosts_length=${#vhosts[*]}
        if [ $vhosts_length -eq 0 ]
        then
                echo -e "\033[31mNo vhost now!\033[0m"
        else
                echo "current vhost display:"
                for((i=0;i<${#vhosts[*]};i++));
                do
                        echo -n -e "\033[32m`vhost ${vhosts[i]}`\033[0m "
                done
                echo
        fi
}

for i in `seq 1 $1 ` ;do
    if [ -e /etc/httpd/conf.d/vhost$1.conf ];
      then function del_vhost $1
      else
             Virtualhost $i
              Hostfile $i
     fi

done
  echo "virtualhost has ssetup "

for i in `ls /etc/httpd/conf.d/*.conf` ;do

function cur_vhost

done

时间: 2024-08-02 15:47:20

jiaob的相关文章

hdu 5572 An Easy Physics Problem 圆+直线

An Easy Physics Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1430    Accepted Submission(s): 270 Problem Description On an infinite smooth table, there's a big round fixed cylinder an

Centos6.5+Jira6.3.6+MySQL5.1+安装+破解+汉化

Centos6.5+Jira6.3.6+MySQL5.1+安装+破解+汉化 一:简介 过程汇总.做个备忘. 下载地址: jira6.3.6:http://pan.baidu.com/s/1eQgTYKE 汉化包:http://download.csdn.net/download/mchdba/7943421 破解包下载地址:http://download.csdn.net/detail/mchdba/7950429         MySQL在线yum安装.驱动自备. 二:所需工具 其中MySQ