如何在 Ubuntu 和 CentOS 上启用 Nginx 的 HTTP/2 协议支持
HTTP/2 是 HTTP 网络协议的主要修订版本,其专注于 HTTP 协议的性能改进。HTTP/2 协议的目标是减少延迟,并且允许在 Web 浏览器和服务器之间的一个连接上并行发起多个请求,因此 Web 应用程序会更快。在本篇教程中,我们将像你展示如何在安装有 Ubuntu 或 CentOS 作为操作系统的 Linux VPS 上使用开启 Nginx 的 HTTP/2 协议。如果你使用 Apache,你可以查看我们的另一篇教程:如何在 Ubuntu 上开启 Apache 的 HTTP/2 协议[1]。
必备条件
为了能够按照本篇教程最终在服务器上启用 HTTP/2 协议,你需要先安装好 Nginx 。并且确保功能正常而且配置没有错误。你可以使用下面的命令来检查一下:
sudo nginx -t
此外,你需要有服务器的 root 访问权限,或者至少有一个具有 sudo 权限的非 root 系统用户,以便你在修改 Nginx 配置文件的时候不会出现权限问题。最后你需要有一个域名和一个颁发给这个域名的有效的 SSL 证书。
在 Ubuntu 上开启 Nginx 的 HTTP/2 协议
为了在 Ubuntu VPS 上开启 Nginx 的 HTTP/2 协议,你需要编辑默认的 Nginx 的服务(server
)块,我们使用的是 nano
,你可以使用你自己的文本编辑器。
sudo nano /etc/nginx/sites-available/default
增加下面的服务块:
server { server_name domain.com www.domain.com;listen 443 ssl http2 default_server;root /var/www/html;index index.html;location / {try_files $uri $uri/ =404;}ssl_certificate /etc/nginx/ssl/domain.com.crt;ssl_certificate_key /etc/nginx/ssl/domain.com.key;
}server {listen 80;server_name domain.com www.domain.com;return 301 https://$server_name$request_uri;
}
确保 domain.com
替换成你真正的域名。 此外,应正确设置文档根(root
)目录,还有 SSL 证书和密钥的路径。
当你编辑完成这个服务块之后,需要保存并关闭文件。使用以下命令检查 Nginx 配置是否有错误:
sudo nginx -t
为了刚刚的改变生效,需要重启 Nginx:
sudo systemctl restart nginx.service
如果你想为另一个域名开启 HTTP/2 协议,你可以查看我们的博客如何在 Ubuntu 和 CentOS 上设置 Nginx 服务块[2]。
在 CentOS 上开启 Nginx 的 HTTP/2 协议
为了在 CentOS VPS 开启 Nginx 的 HTTP/2 协议,你需要按照 Ubuntu 上完全相同的步骤做。唯一的不同点是 Nginx 块文件的位置。为了在 CentOS 上编辑默认的 Nginx 服务块,你需要进入 /etc/nginx/conf.d
这个文件夹。
# nano /etc/nginx/conf.d/default.conf
再次检查配置是否有错误,保存并关闭文件,然后使用以下命令重新启动 Nginx 服务:
# systemctl restart nginx.service
为了检测 Nginx 的 HTTP/2 协议是否开启成功,你可以使用一些在线 HTTP/2 检测工具
阅读原文
转载于:https://www.cnblogs.com/276815076/p/6483667.html
如何在 Ubuntu 和 CentOS 上启用 Nginx 的 HTTP/2 协议支持相关推荐
- 如何在Ubuntu和CentOS上启用Nginx的HTTP/2 协议支持
HTTP/2 是 HTTP 网络协议的主要修订版本,其专注于 HTTP 协议的性能改进.HTTP/2 协议的目标是减少延迟,并且允许在 Web 浏览器和服务器之间的一个连接上并行发起多个请求,因此 W ...
- 如何在Ubuntu 18.04上使用Nginx与MySQL服务器一起部署ASP.NET Core应用程序
The author selected the Open Source Initiative to receive a donation as part of the Write for DOnati ...
- ubuntu nginx html文件,如何在Ubuntu 16.04上更改Nginx Web文档位置
在本文中,我们将学习如何移动或更改Nginx Web服务器文件文件夹的位置.默认情况下,Nginx Web服务器的默认位置为/ usr / share / nginx / html,位于Linux的默 ...
- 在Ubuntu 18.04上安装Nginx
NGINX pronounced as engine-x is an open source and popular HTTP server and can be configured to act ...
- 如何在Ubuntu 20.04上设置Mattermost
介绍 (Introduction) Mattermost is an open source collaboration and messaging platform created with sec ...
- 如何在Ubuntu 18.04上设置Mattermost
介绍 (Introduction) Mattermost is an open source collaboration and messaging platform created with sec ...
- 如何在Ubuntu 18.04上使用Node.js和MongoDB构建和部署GraphQL服务器
The author selected the Wikimedia Foundation to receive a donation as part of the Write for DOnation ...
- mac如何启用cpu虚拟化_如何在 Ubuntu 18.04 上安装 KVM
本文最先发布在: 如何在 Ubuntu 18.04 上安装 KVMwww.itcoder.tech KVM(基于内核的虚拟机)是一个内置于Linux内核的开源虚拟化技术.它允许你基于 Linux 或 ...
- 如何在Ubuntu 18.04上安装和配置NFS服务器
网络文件系统(NFS)是一种分布式文件系统协议,使您可以通过网络共享远程目录.使用NFS,您可以在系统上挂载远程目录,并像对待本地文件一样使用远程计算机上的文件. NFS协议默认情况下未加密,并且与S ...
最新文章
- 【译】为什么我们在 API 中使用 GraphQL
- arcgis二次开发python-ArcGIS 二次开发专题 序
- CAMWorks ShopFloor 2020中文版
- 剑指Offer Ⅱ 005.单词长度的最大乘积 (力扣剑指Offer专项突击版——整数_5)
- 解决ubuntu(16.04版本)和windows电脑之间无法复制粘贴问题
- vue3源码中的最长递增子序列
- [USACO08DEC]拍头Patting Heads 数学 BZOJ 1607
- 一本通1623Sherlock and His Girlfriend
- nhibernate GetType
- POJ 2115C Looooops[一元线性同余方程]
- MD5 加密算法详解
- Win7+U盘安装Ubuntu 双系统超级详细教程
- java写ansi_java实现utf8转换ansi
- 荣耀MagicOS 7.0正式发布 打造以人为中心的智慧生活解决方案
- 解方程组的意义和过程 - Strang MIT 18.06 线性代数精髓 2
- 什么是SQL注入攻击以及如何防止SQL注入攻击
- 记录生活账本,查看账目清晰更可查
- 初识openstack之0——虚拟化及Xen和KVM介绍
- 利用 NSS Key Log 解密 HTTPS
- 编程语言种类这么多,学过5种以上就是大神!
热门文章
- 程序员编程,你的练习是不是有效的?
- iOS学习之NSBundle介绍和使用
- 路由表 (2012-03-27 12:57)
- 双向链表的C++类模板实现
- babyion 加载obj模型_在vue中使用babylonjs引入3d模型,打印mesh数据正常且无报错,但未在场景中显示,请问是什么环节出现了问题?...
- 内涝预测过程的噪音_第七章噪声解析
- red hat 5.3补丁_您如何解释组织的宗旨? 来自Red Hat的3课
- zappos核心价值_尽管Zappos说了什么,中层管理人员仍然很重要
- 持续交付 devops_使用DevOps开始加速软件交付
- Bootstrap 默认栅格系统