SHELL编程开发:如何轻松一键部署Nginx脚本_nginx


实现思路

  1. 下载Nginx源码包
  2. 解压源码包
  3. 进入解压后的目录
  4. 配置编译选项
  5. 编译并安装Nginx
  6. 启动Nginx服务

代码实现

以下是脚本内容及注释:

#!/bin/bash
# 一键部署Nginx脚本

# 下载Nginx源码包
wget http://nginx.org/download/nginx-1.20.1.tar.gz

# 解压源码包
tar -zxvf nginx-1.20.1.tar.gz

# 进入解压后的目录
cd nginx-1.20.1

# 配置编译选项
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

# 编译并安装Nginx
make && make install

# 启动Nginx服务
/usr/local/nginx/sbin/nginx

请将以上脚本保存为一个文件,例如install_nginx.sh,然后在终端中运行以下命令使其可执行:

chmod +x install_nginx.sh

最后,运行脚本以一键部署Nginx:

./install_nginx.sh

一键部署Nginx脚本(v2版本)

  • 变量是具备可变的数值,跟常量(a、b、c、1、2、3等)是相反的,SHELL变量采用=赋值,例如WEB=www.jfedu.net,WEB称为变量名称,而www.jfedu.net称为变量的值,通过$WEB可以调用变量的数值。
  • SHELL编程变量可以使用一个简短的名称代替复杂的数值,可以简化脚本编程,相当于Linux别名机制(alias),还可以方便管理员对脚本后期的调整和优化等。Nginx一键部署脚本引入SHELL变量,代码如下:
#!/bin/bash
#2023年9月20日15:01:51
#auto install nginx web
#by author www.jfedu.net
#######################
NGX_VER="1.24.0"
NGX_YUM="yum install -y"
NGX_DIR="/usr/local/nginx"
NGX_SOFT="nginx-${NGX_VER}.tar.gz"
NGX_URL="http://nginx.org/download"
NGX_SRC=$(echo $NGX_SOFT|sed 's/\.tar\.gz//g')
NGX_ARGS="--user=www --group=www --with-http_stub_status_module"
#提前解决编译时所需依赖环境、库文件;
$NGX_YUM wget tar make gzip gcc
$NGX_YUM pcre pcre-devel zlib-devel
#从Nginx官网下载软件包;
wget -c $NGX_URL/$NGX_SOFT
#查看Nginx软件包是否下载成功;
ls -l $NGX_SOFT 
#通过Tar工具对其解压;
tar -xzvf $NGX_SOFT 
#Cd切换至Nginx源代码目录;
cd $NGX_SRC/ 
#创建www用户和组;
useradd -s /sbin/nologin www -M
#预编译;
./configure --prefix=$NGX_DIR/ $NGX_ARGS 
#编译;
make -j4
#安装;
make -j4 install
#启动Nginx服务进程;
$NGX_DIR/sbin/nginx
#查看Nginx服务进程和端口;
ps -ef|grep nginx
netstat -tnlp|grep -aiwE 80
#Firewalld防火墙对外开放80端口;
firewall-cmd --add-port=80/tcp --permanent
systemctl reload firewalld.service
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: nginxshell