centos安装nginx的几种方式与适用场景分析

一、在线安装

前置条件:服务器能够联通外网。

  1. 使用linux默认源安装(推荐)
    适用场景:只是使用nginx做一些简单的反向代理,对nginx没有太深度的应用,对版本没有要求。
    优点:简单方便,一行命令搞定,一般来源linux默认yum源都是包含了nginx的。
    缺点:

    1. 无法指定版本,一般来说linux默认的软件源都是相对较老的版本,可能没有你想要的部分功能支持。
    2. 有的linux源可能不包含nginx。
    3. 当服务器上需要部署多个nginx的时候,该方式无法满足需要。

    安装:
    直接执行 yum install nginx 命令即可。
    yum install nginx

    注:当前系统中可安装的nginx版本可通过以下命令查询:
    yum list nginx
    image
    从上图可以看到我当前的yum源中可安装的nginx最新版本是1.14.1。

  2. 使用官方yum源安装
    适用场景:对nginx有版本要求,需要用到部分nginx的新特性支持。
    优点:可以指定nginx版本,并且升级方便。
    缺点:相较于方案1操作复杂。不支持多个nginx同时存在。

    安装:

    1. 创建 /etc/yum.repos.d/nginx.repo 文件
      vi /etc/yum.repos.d/nginx.repo
      image

    2. 在打开的文件内按 i 进入编辑模式,然后复制粘贴以下内容:

      [nginx-stable]
      name=nginx stable repo
      baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
      gpgcheck=1
      enabled=1
      gpgkey=https://nginx.org/keys/nginx_signing.key
      module_hotfixes=true

    3. 保存并退出。

    4. 查看可安装的所有linux版本。
      yum list nginx --showduplicates
      image
      注:直接使用 yum list nginx 只会显示一条最新的可安装版本,无法查看所有。

    5. 然后就可以选择自己想要的版本进行安装了,例如:
      yum -y install nginx-1.20.0

  3. 使用源码编译安装(不建议)
    适用场景:适用于同一台服务器需要同时存在多个nginx的情况,或一部分喜欢研究源码的极客。
    优点:

    1. 可以指定nginx版本。
    2. nginx安装位置比较自由。
    3. 可以针对nginx进行魔改。

    缺点:操作复杂,不方便升级。

    安装:

    1. 可至官方下载页下载tar.gz安装包 http://nginx.org/en/download.html
      image
      小提示:可以通过复制下载连接直接到linux中下载。
    2. 解压压缩包
    3. 进入文件夹
    4. 执行 ./configure 命令运行系统兼容性检查,并生成带有核心构建指令的 Makefile。中间可能会提示缺少依赖,根据提示安装对应的依赖就好,一般来说需要的有gcc,openssl,pcre。
      ./configure
      yum install gcc openssl-devel pcre2-devel
    5. 执行 make install && make 命令构建并安装nginx,即可完成。
      make install && make

二、离线安装

适用场景:服务器无法连通外网的情况下。

  1. 使用官方rpm安装包安装(推荐)
    优点:可以指定nginx版本,无需外网,当服务器无法连通外网的情况下强烈推荐。
    缺点:需要下载安装包再上传至服务器,不支持同时存在多个版本的nginx。

    安装:

    1. nginx RPM安装包官方下载地址 https://nginx.org/packages
      image
      根据你的操作系统版本进入对应的目录下,下载想要的nginx版本的rpm安装包,如下:
      image
      如图:我是centos7,64位操作系统,我想选择1.22.0版本的nginx。

    2. 安装刚刚下载的rpm包
      yum install nginx-1.22.0-1.el7.ngx.x86_64.rpm

  2. 使用源码编译安装(不推荐)
    理由:在离线情况下,依赖包层层嵌套,安装极其复杂与麻烦。

参考文章:
http://nginx.org/en/linux_packages.html
https://www.nginx.org.cn/book/_book/Chapter2/Centos.html

posted @ 2022-11-22 00:58  爱做梦的陈先森  阅读(429)  评论(0)    收藏  举报