Ubuntu 默认 apt 源中的 Nginx 版本比较旧,今天介绍下如何在 Ubuntu 中安装最新版本的 Nginx。

要安装较新版本的 Nginx, 可以使用 Nginx 的 APT 源。执行如下脚本来添加 Nginx APT 源:

#!/bin/bash

release=$(lsb_release -cs)

cat <<EOF > /etc/apt/sources.list.d/nginx.list
deb https://nginx.org/packages/ubuntu/ $release nginx
deb-src https://nginx.org/packages/ubuntu/ $release nginx
EOF

之后更新 package 信息:

apt update

在执行上面的命令时,可能会遇到类似下面的报错信息:

W: GPG error: https://nginx.org/packages/ubuntu xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ABF5BD827BD9BF62

这是因为 APT 源中都会有一个 InRelease 文件[1],里面包含了 package 的 meta-information,通常这个文件都会通过私钥进行签名。在 apt update 命令执行过程中,通过公钥对这个签名做验证。如果本地不存在相应的公钥,就会报上面的错误。此时添加对应的 PUBKEY 就可以了:

apt-key adv --recv-key --keyserver keyserver.ubuntu.com ABF5BD827BD9BF62

之后再次执行 apt update 命令就不会有报错信息了。

更新完 package 信息后,执行如下命令查看所有可用的 Nginx 版本:

$ apt-cache madison nginx
nginx | 1.20.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.20.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.18.0-2~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.18.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.16.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.16.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.14.2-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.14.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
nginx | 1.14.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packages
...

执行 apt install nginx 命令,默认会安装最新的 Nginx 版本(或将已安装的Nginx升级到最新版本)。

如果想要安装特定版本的 Nginx, 可以指定对应的版本号,例如:

apt install nginx=1.18.0-2~xenial

Ubuntu: 升级或安装最新版本的 Nginx的更多相关文章

  1. Ubuntu 14.04 安装最新稳定版Nginx 1.6.0

    如果已经安装,请先卸载sudo apt-get remove nginx最新的稳定版Nginx 1.6.0在ubuntuupdates ppa库中提供,网址http://www.ubuntuupdat ...

  2. Ubuntu 16.04 安装最新稳定版Nginx 1.6.0

    Ubuntu 16.04 默认安装的是nginx 1.14.0 #默认安装方式:apt-get  install nginx   1.查看是否安装nginx,如果已经安装,请先卸载 #查看安装版本 d ...

  3. Ubuntu 12.04 安装最新版本NodeJS

    昨天搭建了一个Windows NodeJS 运行环境,但Windows 运行NodeJS命令行各种别扭,开源包的编译也是各种问题,折磨了我一天一夜,果断换到Linux 平台.. 我选择了Ubuntu ...

  4. ubuntu升级已安装git版本

    # To get the very latest version of git, you need to add the PPA (Personal Package Archive) from the ...

  5. [Angular] 删除旧版本,升级安装最新版本

    目录 删除旧版本 清除未卸载干净的angular-cli缓存 对于Linux 对于Windows 安装最新版本 查看安装版本 创建新项目 删除旧版本 npm uninstall -g angular- ...

  6. 如何升级centos到最新版本

    本文将教你如何升级centos到最新版本.centos中“update”命令可以一次性更新所有软件到最新版本.注意:不推荐使用update的y选项,-y选项会让你在安装每项更新前都进行确认(译者注:这 ...

  7. centos7 升级内核到最新版本

    centos7 从问世以来,官网提供的镜像始终是3.10 版本,该版本最大的一个问题是对硬件驱动(尤其是无线网卡)的支持不是很好,本人亲测>5种机型,无线网卡均无法正常使用,如果是非主流机型,手 ...

  8. angular4.0 安装最新版本的nodejs、npm、@angular/cli的方法

    在使用ng项目的ui框架时,比如ng-zorro.angular Material,需要安装最新版本的@angular/cli: 配置ng-zorro框架 ng-zorro官网:https://ng. ...

  9. 如何在Centos7下升级Apache至最新版本

    Apache是使用最广泛的应用部署软件.并且它也是所有服务器的必要组成部分.安装最新版本的apache意味着拥有更多最新的功能和修复了已知的BUG. 介绍 在这篇教程里面,我将会介绍在Centos7下 ...

  10. Ubuntu16.04下安装最新版本的CMake

      当前最新版CMake为3.9.1.. Ubuntu中更新cmake到最新版本,过程如下: 1. 卸载已经安装的旧版的CMake[非必需] apt-get autoremove cmake 2. 文 ...

随机推荐

  1. 四大组件之广播接收者BroadcastReceiver

    参考:Android开发基础之广播接收者BroadcastReceiver 什么是广播接收者? 我们小时候都知道,听广播,收听广播!什么是收听广播呢?打开收音机,调频就可以收到对应的广播节目了.其实我 ...

  2. 使用windows平板学习与办公的一些经历(酷比魔方i9篇)

    大概是在2019年的时候,我在某平台上购买了900元的二手windows平板电脑,酷比魔方i9 首先谈谈背景.当时我手里是有个笔记本,屏幕大概15.6寸,4G+256G的,平时用的时候功率平均20几W ...

  3. python怎么实现正确的浮点数四舍五入

    round 以下示例展示对于结构相同的两组数据(1.03575000和1.03425000)保留小数后4位,使用内置函数round方法的输出结果,并不是需要的结果 print(round(1.0357 ...

  4. Vue中qrcode的使用方法(生成二维码插件) / 前端页面根据URL链接生成二维码

    1.下载 npm install qrcode --save-dev 2.引入(在所需要的页面中引入) import QRCode from "qrcode"; //引入生成二维码 ...

  5. 解决使用mapstruct过程中的一次编译报错问题_Internal error in the mapping processor

    说明 mapstruct版本:1.2.0.Final 开发工具:IntelliJ IDEA 2021.3.1 (Ultimate Edition) 报错现象 java: Internal error ...

  6. 02 python初识

    Python初识 一.入门基础 1. 第一个Python程序 python 代码都是编写在以 .py 结尾的文件中.我们随便新建一个文件,并将文件后缀名改为 .py,在里面编写我们的第一个 pytho ...

  7. wendows 批量修改文件后缀(含递归下级)

    for /r %%a in (*.jpg)do ren "%%a" "%%~na.png" //-- or :for /r %a in (*.jpg)do re ...

  8. 0.96OLED软件实现DMA串口接收数据模拟滚屏效果

    实现的滚屏效果是当一屏写满时,则清空从开头接着写,不是上移的滚屏,虽然OLED有滚屏命令,但是会带水平位移效果,并且只能提前写好数据,类似于广告牌循环播放的那种. 首先是为OLED屏划分区域. 我选择 ...

  9. 2.5 OpenEuler 中C与汇编的混合编程

    2.5 OpenEuler 中C与汇编的混合编程 任务详情 在X86_64架构下实践2.5中的内容,提交代码和实践截图 把2.5的内容在OpenEuler中重新实践一遍,提交相关代码和截图 任务一x8 ...

  10. 关于MYSQL知识点复习

    关于MYSQL关联查询JOIN:   https://www.cnblogs.com/withscorpion/p/9454490.html