云网牛站
所在位置:首页 > Linux云服务器 > 在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

2019-05-27 10:48:59作者:梁叹稿源:云网牛站

本文介绍在Ubuntu 18.04/19.04操作系统上安装Nginx最新版本的方法,本文以安装Nginx 1.17.0版本为例说明。服务器应用可参考:在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

 

从官方Nginx存储库在Ubuntu 18.04、19.04上安装Nginx最新版本

Nginx维护着Ubuntu的存储库,我们可以使用此存储库来安装最新版本的Nginx,首先,使用以下命令为Nginx创建存储库源文件,Nano是一个命令行文本编辑器(nano命令_Linux nano命令使用详解:字符终端文本编辑器):

sudo nano /etc/apt/sources.list.d/nginx.list

在文件中添加以下两行。

deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ bionic nginx

deb-src http://nginx.org/packages/mainline/ubuntu/ bionic nginx

在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

如果你使用Ubuntu 19.04,那么将bionic改为disco:

deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ disco nginx

deb-src http://nginx.org/packages/mainline/ubuntu/ disco nginx

要在Nano文本编辑器中保存文件,请按CTRL+O,然后按Enter确认,按CTRL+X退出,为了验证从此存储库下载的包的完整性,我们需要使用以下命令导入Nginx公钥:

wget http://nginx.org/keys/nginx_signing.key

sudo apt-key add nginx_signing.key

将存储库添加到Ubuntu 18.04系统后,运行以下命令以更新存储库信息:

sudo apt update

如果已从默认的Ubuntu软件存储库安装了Nginx,则需要将其删除:

sudo apt remove nginx nginx-common nginx-full nginx-core

此外,你需要备份主要的Nginx配置文件/etc/nginx/nginx.conf,因为当我们稍后安装最新版本的Nginx时,它将被替换为新的nginx.conf文件:

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

你现有的服务器块文件(也称为virtual host文件)将保持不变,现在运行以下命令从nginx.org存储库安装Nginx:

sudo apt install nginx

如果apt包管理器询问你是否要安装新版本的/etc/nginx/nginx.conf文件,则可以回答否:

在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

安装Nginx后,测试Nginx配置:

sudo nginx -t

如果测试成功,请启动Nginx:

sudo systemctl start nginx

启动时启用自动启动:

sudo systemctl enable nginx

要检查Nginx的状态,请运行:

systemctl status nginx

输出信息,如下图:

在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

要检查Nginx版本,请使用以下命令:

nginx -v

输出信息:

nginx version: nginx/1.17.0

你还可以查看更多详细信息:

nginx -V

输出信息:

在Ubuntu 18.04/19.04系统上安装Nginx最新版本的方法

 

设置Nginx进程用户

来自nginx存储库的Nginx软件包将nginx设置为Nginx进程用户,可以从/etc/nginx/nginx.conf文件的第一行推断出来(如果选择安装新版本的/etc/nginx/nginx.conf文件):

user nginx;

但是,PHP-FPM进程的默认用户和组是www-data,可以在/etc/php/7.2/fpm/pool.d/www.conf文件中看到:

user = www-data

group = www-data

所以我们需要在/etc/nginx/nginx.conf文件中将www-data设置为Nginx进程用户:

sudo nano /etc/nginx/nginx.conf

更改:

user nginx;

为:

user www-data;

保存并关闭文件,然后重新加载Nginx:

sudo systemctl reload nginx

 

包括服务器块文件

默认情况下,仅包含/etc/nginx/conf.d/目录下的文件,如果你还想在启用站点的目录中使用服务器块文件,请确保在nginx.conf文件的http部分中添加以下行:

include /etc/nginx/conf.d/*.conf;

include /etc/nginx/sites-enabled/*;

 

安装Certbot Nginx插件

如果你以前从Ubuntu存储库安装了Nginx,那么当你从nginx存储库安装Nginx时,可能会删除python3-certbot-nginx包,我们需要重新安装它,以便你可以像往常一样自动更新TLS证书:

sudo apt install python3-certbot-nginx

参考:使用Certbot:在Linux上安装letsencrypt的最简单方法

 

相关主题

在Linux上为Nginx启用GZIP和Brotli压缩的方法

精选文章
热门文章