nginx一键安装脚本

1年前 (2024-02-09)阅读47回复0
administrator
administrator
  • 管理员
  • 注册排名1
  • 经验值775
  • 级别管理员
  • 主题155
  • 回复0
楼主


链接来自:https://www.cnblogs.com/cherishthepresent/p/17107485.html



Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器, 在企业生产环境中常常使用yum或编译安装Nginx。

以下脚本来自粉丝分享,可完成Nginx的全自动编译安装,安装完成后自动启动并设置开机自启。脚本支持CentOS系列发行版本,shell脚本源码如下:


#!/bin/bashck_ok() {         if [ $? -ne 0 ]         then                echo "$1 error."                exit 1         fi}download_ng() {     cd  /usr/local/src     if [ -f nginx-1.23.0.tar.gz ]     then        echo "当前目录已经存在nginx-1.23.0.tar.gz"        echo "检测md5"        ng_md5=`md5sum nginx-1.23.0.tar.gz|awk '{print $1}'`         if [ ${ng_md5} == 'e8768e388f26fb3d56a3c88055345219' ]         then            return 0         else            sudo /bin/mv nginx-1.23.0.tar.gz nginx-1.23.0.tar.gz.old         fi    fi    sudo curl -O http://nginx.org/download/nginx-1.23.0.tar.gz     ck_ok "下载Nginx"}install_ng() {     cd /usr/local/src     echo "解压Nginx"    sudo tar zxf nginx-1.23.0.tar.gz     ck_ok "解压Nginx"    cd nginx-1.23.0     echo "安装依赖"    if which yum >/dev/null 2>&1     then        ## RHEL/Rocky        for pkg in gcc make pcre-devel zlib-devel openssl-devel         do            if ! rpm -q $pkg >/dev/null 2>&1             then                sudo yum install -y $pkg                ck_ok "yum 安装$pkg"            else                echo "$pkg已经安装"            fi        done    fi    if which apt >/dev/null 2>&1     then        ##ubuntu        for pkg in make libpcre++-dev  libssl-dev  zlib1g-dev         do            if ! dpkg -l $pkg >/dev/null 2>&1             then                sudo apt install -y $pkg                ck_ok "apt 安装$pkg"            else                echo "$pkg已经安装"            fi        done    fi    echo "configure Nginx"    sudo ./configure --prefix=/usr/local/nginx  --with-http_ssl_module     ck_ok "Configure Nginx"    echo "编译和安装"    sudo make && sudo make install     ck_ok "编译和安装"    echo "编辑systemd服务管理脚本"    cat > /tmp/nginx.service <<EOF [Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network-online.target remote-fs.target nss-lookup.target Wants=network-online.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/bin/sh -c "/bin/kill -s HUP \$(/bin/cat /usr/local/nginx/logs/nginx.pid)" ExecStop=/bin/sh -c "/bin/kill -s TERM \$(/bin/cat /usr/local/nginx/logs/nginx.pid)" [Install] WantedBy=multi-user.target EOF    sudo /bin/mv /tmp/nginx.service /lib/systemd/system/nginx.service     ck_ok "编辑nginx.service"    echo "加载服务"    sudo systemctl unmask nginx.service     sudo  systemctl daemon-reload     sudo systemctl enable nginx     echo "启动Nginx"    sudo systemctl start nginx     ck_ok "启动Nginx"} download_ng install_ng


将脚本保存为nginx_install.sh,执行以下命令:

chmod +x nginx_install.sh && ./nginx_install.sh

访问服务器IP地址,可以发现已经可以正常访问Nginx了。常用nginx命令:

# 启动nginxsystemctl start nginx# 停止nginxsystemctl stop nginx# 设置开机启动systemctl enable nginx# 取消开机启动systemctl disable nginx

最后附上一键安装nginx命令,友友们可以直接食用哦~

bash -c "$(curl -L s.aaa.al/nginx_install.sh)"



0
回帖

nginx一键安装脚本 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息