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

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

#!/bin/bashrelease=$(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 nginxnginx | 1.20.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.20.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.18.0-2~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.18.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.16.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.16.0-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.14.2-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 1.14.1-1~xenial | https://nginx.org/packages/ubuntu xenial/nginx amd64 Packagesnginx | 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

参考:

[1]: https://wiki.debian.org/DebianRepository/Format#A.22Release.22_files

一如既往,如果你对文章中的内容有任何疑问,或者是发现文章中有任何错误,都可以通过留言告诉我;如果你喜欢我的文章,欢迎关注我的微信公众号 Tech For Geek

Ubuntu: 安装最新版本的 Nginx相关推荐

  1. Ubuntu 13.04 安装最新版本的Nginx

    如何编译安装请参考我的另一篇博客:http://blog.csdn.net/sheismylife/article/details/6744394 如何直接使用Ubuntu默认的Nginx版本,请参考 ...

  2. 在 Ubuntu 上安装最新版本的 Erlang方法介绍

    Erlang 是一种用于构建大规模可扩展实时系统的函数式编程语言.Erlang 最初是由 爱立信 创建的专有软件,后来被开源. Erlang 在 Ubuntu 的 Universe 仓库 中可用.启用 ...

  3. ubuntu安装python_ubuntu18.04下源码编译安装最新版本Python3

    原文链接:ubuntu18.04下源码编译安装最新版本Python3 截止到2019年4月9日,Python3最新的版本是3.7.3. 在ubuntu18.04中已经安装的Python3版本是3.6. ...

  4. 如何在Ubuntu上安装最新版本的Node js

    如何在Ubuntu上安装最新版本的Node.js 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs Node.js是一个软件平台,通常用于构建大规模的服务器 ...

  5. 在Ubuntu上安装最新版本的Handbrake

    导读 此快速教程介绍了如何使用在基于 Ubuntu 的发行版上使用官方 PPA 安装最新版本的 HandBrake. 此快速教程介绍了如何使用在基于 Ubuntu 的发行版上使用官方 PPA 安装最新 ...

  6. ubuntu下安装最新版本nodejs和npm

    ubuntu环境下安装最新版本的nodejs和npm 说明:本人尝试了网上多种ubuntu下安装nodejs和npm总是报一些奇怪的错误,困惑了 一整天,最终测试安装最新版本的nodejs成功 nod ...

  7. 手把手教你如何在 Linux 上源码安装最新版本 R

    如果你使用的 Linux 系统 GCC 版本太低,又没有 root 权限(即使有 root 权限又担心升级 GCC 带来的风险):同时你又不想额外多安装多一个 Anaconda 或者 Minicond ...

  8. Centos7 下定义MariaDB源Yum安装最新版本的MariaDB

    Centos7 下定义MariaDB源Yum安装最新版本的MariaDB 在Centos下安装软件服务的方式一般就那么几种(yum.rpm ivh xxx.make make&&ins ...

  9. Ubuntu安装特定版本安装包

    Ubuntu安装特定版本安装包可以用aptitude,aptitude是apt-get的高级版,使用起来更强大. aptitude install package=version 比如我要安装2.6. ...

最新文章

  1. SPFA-DFS P3385 模板 判断负环===vector为啥过不了?
  2. swift 3d v6.0汉化中文版
  3. php_os用法,PHP教程:PHPUnit学习笔记(二)PHPUnit基本用法
  4. vi/vim 三种模式及命令 (简单粗暴,轻松搞懂)
  5. Tomcat和IntelliJ –在webapps文件夹之外部署war文件
  6. vue_axios请求封装、异常拦截统一处理
  7. 设计模式---组合模式(C++实现)
  8. 五分钟读懂视频大数据分析
  9. 如何自己开发FreeCAD的宏插件
  10. 罗永浩直播带货卖了1.1亿,更高级的自我认知【附直播卖货商业计划书PPT】
  11. 根服务器修改密钥,更改 SQL Server 实例的服务主密钥
  12. 月活8.89亿背后:微信工程师细数兼容测试经验
  13. 什么是JAVA内部类?
  14. VS2019使用Mini-Filter
  15. 【第三方互联】微博2、创建新浪微博(sina)互联应用
  16. linux使用光盘镜像(ISO)作为软件源安装软件
  17. # 20155327 2016-2017-4 《Java程序设计》第七周学习总结
  18. 判断手机是否被黑客入侵的7种方法
  19. 把生命放在美丽的焦距上——记桂林、阳朔、龙胜之旅
  20. Oracle聚簇因子(Clustering factor,CF)

热门文章

  1. HINCRBY key field increment
  2. 想念你的夜,一个人流泪,两颗心体会
  3. 移动端精灵图适配问题---------你是不是掉坑里了?
  4. 虚拟机我的计算机那里打不开,vmware虚拟机打不开怎么办(目前最完美的解决法)...
  5. 三种Scriptlet总结
  6. android 9.0室内定位方案,Android 9.0四大隐藏功能,让你的安卓手机更实用
  7. 华为mate30为什么没有计算机,华为mate30系列为什么没有512G内存?
  8. 【转】增益模型营销逻辑再理解
  9. BZOJ3668 起床困难综合症
  10. EXCEL 添加括号引号逗号 插入数据库