多个Nginx虚拟主机部署脚本
多个Nginx虚拟主机部署脚本
内容如下:
#!/bin/bash
#2024年2月5日
#auto config nginx virtual
#by auto lqcbj
###############################
NGINX_CONF="nginx.conf"
NGINX_DIR="/usr/local/nginx"
NGINX_YUM="yum install -y"
NGINX_URL="http://nginx.org/download"
NGINX_ARG="--user www --group www --with-http_stub_status_module"
function nginx_help(){
echo -e "\033[33mNginx VIrtual Manager SHELL Scripts\033[Om"
echo -e "\033[33m----------------------------------\033[Om"
echo -e "\033[33m1) -I New Install Nginx WEB Server.\033[Om"
echo -e "\033[33m2) -A v1.lqcbj.com |v2.lqcbj.com v3.lqcbj.com\033[Om"
echo -e "\033[33m3) -D v1.lqcbj.com |v2.lqcbj.com v3.lqcbj.com\033[Om"
echo -e "\033[35mUsage:{/bin/bash $0 -I(Install) -A(add) or -D(del) -H(help)\033[Om"
exit
}
function nginx_install(){
#Nginx Install config
if [ ! -d ${NGINX_DIR} ];then
shift 1
NGINX_VER=$(echo $+)
NGINX_SOFT="nginx-${NGINX_VER}.tar.gz"
NGINX_SOFT=$(echo $NGINX_SOFT |sed "s/.tar.*//g")
NGINX_CODE="src/core/nginx.h"
CHECK_NUM=$(rpm -qa |grep -wcE "gcc|pcre-devel")
if [$CHECK_NUM -lt 2 ];then
$NGINX_YUM wget make gzip tar gcc gcc-c++ >>/dev/null 2>&1
$NGINX_YUM pcre pcre-devel zlib zlib-devel >>/dev/null 2>&1
fi
wget -c $NGINX_URL/$NGINX_SOFT
tar -xzf $NGINX_SOFT
cd $NGINX_SRC
#sed -i "s/$NGINX_VER//g" $NGINX_CODE
#sed -i "s/nginx\//JWS/g" $NGINX_CODE
#sed -i "s/"NGINX"/"JWS"/g" $NGINX_CODE
useradd -s /sbin/nologin www
./configure --prefix=${NGINX_DIR}/ $NGINX_ARG
make
make install
${NGINX_DIR}/sbin/nginx
ps -ef|grep nginx
netstat -ntlp |grep 80
sentenfore 0
systemctl stop firewalld.service
else
echo -e "\033[33m-------------------\033[Om"
echo -e "\033[32mThe Nginx WEB Already Install,Please Exit.\033[Om"
fi
function virtual_add(){
#Nginx config Virtual Host
if [ $# -le 1 ];then
nginx_help
fi
cd ${NGINX_DIR}/conf/
grep "include domains" ${NGINX_CNF} >>/dev/null 2>&1
if [ $? -ne 0 ];then
grep -vE "^$|#" ${NGINX_CNF} > ${NGINX_CNF}.swp
\cp ${NGINX_CNF}.swp ${NGINX_CNF}
sed -i "/server/,$d" ${NGINX_CNF}
echo -e -e " include domains/*;\n}" >>${NGINX_CNF}
${NGINX_DIR}/sbin/nginx -t
mkdir domains -p
fi
shift 1
NUM='ls domains/|grep -c $*'
if [$NUM -eq 0 ];then
cat>domains/$*<<EOF
server {
listen 80;
server_name $*;
location / {
root html/$*;
index index.html index.htm;
}
}
EOF
mkdir -p ${NGINX_DIR}/html/$*
cat>${NGINX_DIR}/html/$*/index.html<<EOF