Nginx批量创建虚拟主机自动化脚本

小柒博客
小柒博客
小柒博客
342
文章
96
评论
2017-12-2309:05:51 1 12.3K 1858字阅读6分11秒

这篇文章主要为Nginx批量创建虚拟主机脚本,需要的朋友可以参考下。

[root@localhost ~]# vim auto_config_nginx_virtual_host.sh

#!/bin/bash
#2017-12-18 10:31:15
#by author yangxz
#auto Install Nginx

#Define Nginx path variables
NGINX_URL=http://mirrors.yangxingzhen.com/nginx
NGINX_FILE=nginx-1.13.4.tar.gz
NGINX_FILE_DIR=nginx-1.13.4
NGINX_PREFIX=/usr/local/nginx

nginx_install () {
#Install Nginx Soft
yum -y install pcre pcre-devel openssl openssl-devel gcc gcc-c++ wget
wget -c -P /src $NGINX_URL/$NGINX_FILE
tar zxf /src/$NGINX_FILE -C /src
cd /src/$NGINX_FILE_DIR
sed -i 's/1.13.4/ /;s/nginx\//nginx/' /src/nginx-1.13.4/src/core/nginx.h
useradd -s /sbin/nologin www
./configure --prefix=$NGINX_PREFIX \
--user=www \
--group=www \
--with-http_ssl_module \
--with-http_stub_status_module
if [ $? -eq 0 ];then
make &&make install
echo -e "\033[32m NGINX Install success \033[0m"
else
echo -e "\033[32m NGINX Install fail,please check \033[0m"
exit 0
fi
}
nginx_Virtual_Host () {
read -p "Please Enter Server_name:" HOST
if [ -z $HOST ];then
echo -e "\033[32m Please Enter xiaoqi.com|xiaoqi.com admin.com \033[0m"
exit 0
fi
NUM=`grep -c "include vhosts/*" $NGINX_PREFIX/conf/nginx.conf`
if [ $NUM -eq 0 ];then
sed -i '$i\\tinclude vhosts/*;' $NGINX_PREFIX/conf/nginx.conf
    if [ ! -d $NGINX_PREFIX/conf/vhosts ];then
    mkdir -p $NGINX_PREFIX/conf/vhosts
    fi
fi
for i in $HOST
do
cat >$NGINX_PREFIX/conf/vhosts/$i <<EOF
server {
listen 80;
server_name $i;
location / {
root /data/www/$i;
index index.html index.htm;
    }
}
EOF
if [ ! -d /data/www/$i ];then
    mkdir -p /data/www/$i
fi
cat >/data/www/$i/index.html <<EOF
this is a $i server
EOF
echo "127.0.0.1 $i" >>/etc/hosts
done
ln -sf $NGINX_PREFIX/sbin/nginx /usr/bin
nginx -t >/dev/null 2>&1
if [ $? -eq 0 ];then
    nginx -s reload
else
nginx -t
fi
for k in $HOST
do
curl $k
done
}
PS3="Please Enter select Install Menu[1-3]:"
select i in Install_Nginx-1.13.4 Nginx_Virtual_Host quit
do
case $i in
    Install_Nginx-1.13.4)
    nginx_install
    ;;
    Nginx_Virtual_Host)
    nginx_Virtual_Host $HOST
    ;;
    quit)
    echo -e "\033[33m Exit select Menu. \033[0m"
    exit 0
esac
done
继续阅读
若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如果喜欢本站,请打赏支持本站,谢谢!
  • 微信号
  • 微信扫一扫加我!
  • weinxin
  • 微信公众号
  • 微信扫一扫关注我!
  • weinxin
Shell 最后更新:2020-5-11
小柒博客
  • 本文由 发表于 2017-12-2309:05:51
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
Kickstart基于CentOS 6.X自动安装部署脚本 Shell

Kickstart基于CentOS 6.X自动安装部署脚本

用途:自动化安装系统。 优势:传统装机需要下载系统镜像,然后人工一步一步设置各种参数,然后点击按钮安装,如果需要同时安装100台机器,则重复性工作太多,而且耗费人力和时间,kick...
Kickstart基于CentOS 7.X自动安装部署脚本 Shell

Kickstart基于CentOS 7.X自动安装部署脚本

用途:自动化安装系统。 优势:传统装机需要下载系统镜像,然后人工一步一步设置各种参数,然后点击按钮安装,如果需要同时安装100台机器,则重复性工作太多,而且耗费人力和时间,kick...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

 

评论:1   其中:访客  1   博主  0
    • 运维老司机 运维老司机 6

      亲测,写的不错,感谢博主 :razz: