如何在 Ubuntu 20.04 上的 Nginx 中配置 HTTP/2

HTTP/2 协议是其前身 HTTP/1.1 的改进。 它提供了许多好处和改进,例如更快的页面加载速度和更高的安全性。 如果你在 HTTP/1.1 上运行 Nginx,那么你应该考虑迁移到 HTTP/2。

在本指南中,我们将探讨如何在 Ubuntu 20.04 上的 Nginx 上启用 HTTP/2

先决条件

当您准备在 Nginx 网络服务器上配置 HTTP/2 时,请确保您具有以下内容:

1.9.5 或更高版本的 Nginx Web 服务器。 我们有关于如何在 Ubuntu 20.04 上安装 Nginx 的指南。 要检查已安装的 Nginx 版本,只需运行命令

$ nginx -V

接下来,确保您拥有 OpenSSL 1.0.2 或更高版本。 要验证您正在运行的版本,请发出以下命令:

$ openssl version

此外,要使其正常工作,您需要使用 SSL 证书加密网络服务器。 在这里,我们的网络服务器使用 Let’s Encrypt SSL 证书。 我们已经在我们的域名所在的位置设置了这个 linuxtechgeek.info 并指向我们虚拟服务器的 IP 地址。 此外,我们还为域配置了一个虚拟主机文件。

最后,您的服务器必须使用 TLS v 1.2 及更高版本。

第 1 步:测试您的网站是否使用 HTTP/1

首先,我们需要验证我们的 Web 服务器当前使用的是 HTTP/1.1。 为此,我们将运行 curl 显示的命令

$ curl -I https://domain-name

在我们的例子中,这将是:

$ curl -I https://linuxtechgeek.info

输出的第一行清楚地表明我们正在使用 HTTP/1.1

第 2 步:通过编辑虚拟主机文件启用 HTTP/2

要启用 HTTP/2,我们需要编辑或修改域的虚拟主机文件。

$ sudo vim /etc/nginx/sites-available/linuxtechgeek.info

找到这一行:

listen 443 ssl 

附加属性 http2 刚过 ssl。

如果您有一行开头如下:

听 [::]:443 ssl …

添加 http2 属性也是。

Save 更改并退出。

第 3 步:验证 Nginx 配置是否正常

退出虚拟主机文件后,重新启动 Nginx 网络服务器

$ sudo systemctl restart nginx

接下来,检查 Nginx 配置是否正确:

$ sudo nginx -t

从输出看,Nginx 配置没问题。

第 4 步:检查是否启用了 HTTP/2

最后,要验证是否启用了 HTTP/2,请执行:

$ curl -I https://linuxtechgeek.info

从输出中可以看出,HTTP/2 现在已启用。 完美的!

结论

这是关于如何在 Ubuntu 20.04 上的 Nginx 网络服务器上启用 HTTP/2 的简要指南