Shell脚本一键安装Nginx服务自定义Nginx版本

下面我来详细讲解“Shell脚本一键安装Nginx服务自定义Nginx版本”的完整攻略:

1. 准备工作

首先,我们需要准备好以下两个文件:

  • Nginx源码包(.tar.gz格式)
  • 自定义Nginx配置文件

可以从Nginx官网(http://nginx.org/)下载最新的源码包,或者根据自己的需要下载指定版本的源码包。

至于Nginx配置文件,可以根据自己的需要进行定制化设置,比如修改端口号、添加虚拟主机等。我们可以将它放在一个独立的文件夹中,以便后续使用。

2. 编写Shell脚本

Shell脚本是整个自动化安装的核心。下面是一个示例脚本,其中包含了两个命令行参数,分别是自定义Nginx版本号和Nginx源码包的路径:

#!/bin/bash

# 获取命令行参数
NGINX_VERSION=$1
NGINX_SOURCE=$2

# 判断源码包是否存在
if [ ! -f $NGINX_SOURCE ]; then
  echo "Nginx源码包不存在,请检查后重试。"
  exit
fi

# 关闭SELinux(如果有需要的话)
setenforce 0 2>/dev/null

# 安装编译需要的依赖
yum install -y gcc openssl-devel pcre-devel zlib-devel

# 解压源码包
tar -zxvf $NGINX_SOURCE

# 进入源码目录
cd ${NGINX_SOURCE%.tar.gz}

# 配置Nginx
./configure \
  --prefix=/usr/share/nginx \
  --sbin-path=/usr/sbin/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.pid \
  --lock-path=/var/run/nginx.lock \
  --with-http_ssl_module \
  --with-http_stub_status_module \
  --with-http_gzip_static_module \
  --with-pcre \
  --with-file-aio \
  --with-http_realip_module \
  --with-http_addition_module \
  --with-http_sub_module \
  --with-http_dav_module \
  --with-http_flv_module \
  --with-http_mp4_module \
  --with-http_random_index_module \
  --with-http_secure_link_module \
  --with-http_degradation_module \
  --with-http_slice_module \
  --with-http_perl_module \
  --with-mail \
  --with-mail_ssl_module \
  --with-google_perftools_module \
  --with-debug \
  --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic'

# 编译Nginx
make

# 安装Nginx
make install

# 创建Nginx配置文件软链接
ln -s /etc/nginx/sites-available /etc/nginx/sites-enabled

# 复制自定义Nginx配置文件
cp /path/to/nginx.conf /etc/nginx/

# 重启Nginx服务
systemctl restart nginx.service

该脚本包含了以下步骤:

  • 获取命令行参数。
  • 判断源码包是否存在。
  • 关闭SELinux(如果有需要的话)。
  • 安装编译需要的依赖。
  • 解压源码包。
  • 进入源码目录。
  • 配置Nginx。
  • 编译Nginx。
  • 安装Nginx。
  • 创建Nginx配置文件软链接。
  • 复制自定义Nginx配置文件。
  • 重启Nginx服务。

可以根据自己的实际需求进行修改和定制化。

3. 示例

下面是两个示例命令:

$ sh nginx_setup.sh 1.20.1 /path/to/nginx-1.20.1.tar.gz

该命令表示安装Nginx 1.20.1版本,源码包路径为/path/to/nginx-1.20.1.tar.gz。

$ sh nginx_setup.sh 1.21.0 /path/to/nginx-1.21.0.tar.gz

该命令表示安装Nginx 1.21.0版本,源码包路径为/path/to/nginx-1.21.0.tar.gz。

以上就是“Shell脚本一键安装Nginx服务自定义Nginx版本”的完整攻略,希望可以对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Shell脚本一键安装Nginx服务自定义Nginx版本 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • (gunicorn | uvicorn)+nginx 部署python-sanic项目

        1、创建app #main.py from sanic import Sanic from sanic.response import json as JsonResponse,text,html from views.user import user_bp app = Sanic(__name__, strict_slashes = False) …

    Nginx 2023年4月13日
    00
  • nginx 1.15.10 前端代理转发 将多个地址,代理转发到一个地址和端口 多系统公用一个cookie 统一token

    nginx 1.15.10 前端代理转发 将多个地址,代理转发到一个地址和端口 多系统公用一个cookie 统一token   注意: proxy_pass http://192.168.40.54:2233/xxxx_web/; (结尾有分号)   重新加载的reload命令 nginx.exe -s reload   nginx 下载 https://n…

    Nginx 2023年4月9日
    00
  • nginx安装第三方模块的方法

      nginx第三方模块安装方法:   ./configure –prefix=/你的安装目录 –add-module=/第三方模块目录 以安装fair模块实例 下载fair安装包并解压     1、在未安装nginx的情况下安装nginx第三方模块 # ./configure –prefix=/usr/local/nginx-1.9.9 –add-…

    Nginx 2023年4月10日
    00
  • Nginx日志按天切割基本配置说明

    1.声明日志格式     声明log    log位置                log格式;     access_log logs/access.log main;    2.定义日志格式(以下为常用的日志格式 可各自按需调整格式):   log_format main  ‘$remote_addr – $remote_user [$time_loc…

    Nginx 2023年4月13日
    00
  • centos 7.0 安装nginx 1.9.10

    可以参考以前安装成功的案例 centos 7.0 nginx 1.7.9成功安装过程 官网下载 http://nginx.org/en/download.html nginx下载位置 /usr/local/ nginx 安装目录 /usr/etc/nginx1910 nginx path prefix: “/usr/etc/nginx1910” nginx …

    Nginx 2023年4月10日
    00
  • [Nginx] 博客园出现了502错误该怎么追查原因

    博客园从今天上午就开始报502错误 , 他的原因还不知道 , 暂时先说下我们遇到502的排查情况 最大的可能性就是后端的服务不能支撑前端过来的tcp请求连接,包括连接数据库服务时的连接数问题   1. php-fpm的进程是否启动 ,没启动肯定报这个错误 2. tcp连接数超过了fpm的进程数 netstat -altupn|grep EST|grep ph…

    2023年4月9日
    00
  • Centos7.x下Nginx安装及SSL配置与常用命令详解

    CentOS 7.x下Nginx安装及SSL配置与常用命令详解完整攻略主要包含以下几个步骤: 安装Nginx 配置SSL证书 配置Nginx支持SSL 常用命令详解 1. 安装Nginx 在CentOS中,通过yum可以很方便的安装Nginx,步骤如下: sudo yum install epel-release sudo yum install nginx…

    Nginx 2023年5月16日
    00
  • nginx搭建NFS服务器的方法步骤

    下面是详细讲解“nginx搭建NFS服务器的方法步骤”的完整攻略,其中还有两个示例说明。 什么是NFS服务器 NFS(Network File System)服务器是一种集中式的文件存储管理系统,可以将多台主机的硬盘空间组合在一起,形成一个大型的、集中式的网络文件系统。NFS服务器通常由一台或多台主机组成,可以将这些主机上的硬盘空间挂载到NFS服务器上,形成…

    Nginx 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部