安装nginx

内容纲要

在 Linux 上安装

对于 Linux,可以使用 nginx.org 中的 nginx 软件包

支持的发行版和版本

nginx 软件包可用于以下 Linux 发行版和版本:
RHEL 及其衍生产品

Version Supported Platforms
7.4+ x86_64, aarch64/arm64
8.x x86_64, aarch64/arm64, s390x
9.x x86_64, aarch64/arm64, s390x

Debian

Version Supported Platforms
11.x “bullseye” x86_64, aarch64/arm64
12.x “bookworm” x86_64, aarch64/arm64

Ubuntu

Version Supported Platforms
20.04 “focal” x86_64, aarch64/arm64, s390x
22.04 “jammy” x86_64, aarch64/arm64, s390x
23.04 “lunar” x86_64, aarch64/arm64

SLES

Version Supported Platforms
12 SP5+ x86_64
15 SP2+ x86_64

Alpine

Version Supported platforms
3.15 x86_64, aarch64/arm64
3.16 x86_64, aarch64/arm64
3.17 x86_64, aarch64/arm64
3.18 x86_64, aarch64/arm64

Amazon Linux

Version Supported platforms
2 (LTS) x86_64, aarch64/arm64
2023 x86_64, aarch64/arm64

RHEL 7 和 SLES 12 的软件包在构建时不支持 HTTP/3,因为它们使用的 OpenSSL 不支持 TLSv1.3。

安装说明

在新机器上首次安装 nginx 之前,您需要设置 nginx 软件包存储库。之后,您可以从存储库安装和更新 nginx。

RHEL 及其衍生产品

本节适用于 Red Hat Enterprise Linux 及其衍生产品,例如 CentOS、Oracle Linux、Rocky Linux、AlmaLinux。

安装先决条件:

sudo yum install yum-utils

要设置 yum 存储库,请使用以下内容创建名为 /etc/yum.repos.d/nginx.repo 的文件:

[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

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

默认情况下,使用稳定 nginx 软件包的存储库。如果您想使用主线 nginx 软件包,请运行以下命令:

sudo yum-config-manager --enable nginx-mainline

要安装 nginx,请运行以下命令:

sudo yum install nginx

当提示您接受 GPG 密钥时,请验证指纹是否与 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 匹配,如果是,则接受。

Debian

安装先决条件:

sudo apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring

导入官方 nginx 签名密钥,以便 apt 可以验证包的真实性。获取密钥:

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

验证下载的文件是否包含正确的密钥:

gpg --dry-run --quiet --no-keyring --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg

输出应包含完整的指纹 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 ,如下所示:

pub   rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
      573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62
uid                      nginx signing key <signing-key@nginx.com>

如果指纹不同,请删除该文件。

要为稳定的 nginx 软件包设置 apt 存储库,请运行以下命令:

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/debian `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

如果您想使用主线 nginx 软件包,请运行以下命令:

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

设置存储库固定以优先选择我们的包而不是发行版提供的包:

echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99nginx

要安装 nginx,请运行以下命令:

sudo apt update
sudo apt install nginx

在 FreeBSD 上安装

在 FreeBSD 上,nginx 可以通过软件包ports 系统安装。端口系统提供了更大的灵活性,允许在多种选项中进行选择。 port 将使用指定的选项编译 nginx 并安装它。

从源头构建

如果需要一些特殊功能,而包和端口无法提供,则也可以从源文件编译 nginx。虽然更灵活,但这种方法对于初学者来说可能很复杂。有关更多信息,请参阅从源构建 nginx

Leave a Comment

您的电子邮箱地址不会被公开。 必填项已用*标注

close
arrow_upward