#!/bin/bash
#设置安装nginx的版本(可以自定义)
nginxlevel=nginx-1.20.1
#判断是否以root用户执行此脚本
if [ $UID -ne 0 ];
then
echo "请使用Root用户执行$0"
exit
fi
#判断是否接入网络
ping baidu.com -c4 >/dev/null
if [ $? -ne 0 ];
then
echo "执行$0需要访问到互联网..."
echo "请检查与互联网的连接后再试..."
exit
fi
#判断系统是否安装过nginx
exist=$(whereis nginx | awk '{print $2}')
if [ ! -z "${exist}" ];
then
echo "您的系统已经部署过nginx了..."
echo "或您的系统还有nginx残留文件..."
echo "可以使用 "whereis nginx" 和 "find / -name nginx" 查找清空掉残留文件..."
exit
fi
#安装依赖环境
yum install -y gcc openssl-devel pcre-devel zlib-devel lsof wget
groupadd -r nginx
useradd -r -g nginx -s /sbin/nologin -M nginx
mkdir -pv /var/tmp/nginx
wget -P /root http://nginx.org/download/"$nginxlevel".tar.gz
tar -zxvf "$nginxlevel".tar.gz
sleep 3
#编译安装
cd /root/"$nginxlevel"
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-pcre
make && make install
sleep 3
#删除无用文件和路径
rm -rf /root/"$nginxlevel" /root/"$nginxlevel".tar.gz
sleep 3
#设置nginx开机自启动
echo "#nginx开机自启动" >>/etc/rc.d/rc.local
echo "mkdir -p /var/run/nginx && touch /var/run/nginx/nginx.pid" >>/etc/rc.d/rc.local
echo "/usr/local/nginx/sbin/nginx" >>/etc/rc.d/rc.local
#重载配置文件
chmod +x /etc/rc.d/rc.local
#启动nginx
/usr/local/nginx/sbin/nginx
if [ $? -eq 0 ];
then
echo "===============Nginx安装完毕==============="
echo "================Nginx已启动================"
else
echo "===============Nginx安装失败==============="
echo "=============请检查系统环境配置============="
fi