开启 HTTP/3 & QUIC 在 Docker Compose+Nginx

HTTP/3 基于 UDP 的 QUIC 协议,多路复用安全传输
HTTP/1.1 和 HTTP/2 都将 TCP 用作其传输协议

HTTP/3 和 QUIC 具有很多优势:

1.第一个请求的响应时间更短。在客户端和服务器之间以较少的往返次数协商连接,第一个请求会更快地到达服务器。
2.改进了发生连接数据包丢失时的体验。 HTTP/2 通过一个 TCP 连接多路复用多个请求。 如果在连接时发生数据包丢失,会影响所有请求。 这个问题称为“队头阻塞”。 由于 QUIC 提供本机多路复用,因此丢失的数据包只会影响已丢失数据的请求。
3.支持在网络之间转换。对于移动设备非常有用,因为在移动设备更改位置时,在 WIFI 和移动电话网络之间切换是很常见的。 目前,在切换网络时,HTTP/1.1 和 HTTP/2 连接会失败并提示错误。 应用或 Web 浏览器必须重试任何失败的 HTTP 请求。 HTTP/3 让应用或 Web 浏览器在网络发生更改时可以无缝地继续

浏览器端 开启 HTTP/3 & QUIC

谷歌Chrome浏览器 访问:chrome://flags/
启用:Experimental QUIC protocol (enable-quic)

微软新版Edge浏览器 访问:edge://flags
启用:Experimental QUIC protocol 设置为“Enabled”

火狐Firefox浏览器 访问:about:config
启用:network.http.http3.enabled

测试是否已经支持 QUIC:

https://quic.nginx.org/
https://quic.nginx.org/quic.html
https://cloudflare-quic.com/

测试 网站 是否支持

https://http3check.net/
https://geekflare.com/tools/http3-test

服务器端 开启

docker-compose.yml

services:
nginx:
image: registry.gitlab.com/dasskelett/nginx-quic-docker/nginx-quic:latest
container_name: nginx-quic
restart: always
ports:
- "80:80"
- "443:443/tcp"
- "443:443/udp"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
- /home/log:/var/log/nginx
- /home/www:/usr/share/nginx/html
- /home/sslcrt/1_www.xxx.com.pem:/etc/nginx/cert.pem:ro
- /home/sslcrt/2_www.xxx.com.key:/etc/nginx/cert.key:ro

nginx.conf

server {
listen 443 quic reuseport;
listen 443 ssl http2;
ssl_protocols TLSv1.3 TLSv1.2 TLSv1.1 TLSv1;
location / {
add_header Alt-Svc 'h3=":443"; ma=86400';
}
}

防风墙 添加 443 udp 端口

原文链接:https://www.cnblogs.com/zengxiangzhan/p/17299057.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:开启 HTTP/3 & QUIC 在 Docker Compose+Nginx - Python技术站

(0)
上一篇 2023年4月17日
下一篇 2023年4月17日

相关文章

  • 一文解读云计算 (转)

    “云计算”这个词,相信大家都非常熟悉了。 作为IT行业的热门技术,它频繁出现在各大媒体的新闻报道中。BAT这样的互联网企业,也经常把它挂在嘴边。 相信很多人都想学习云计算,跟上技术潮流。如果对云计算有一定了解的话,应该会或多或少地听到这些名词——OpenStack、Hypervisor、KVM、Docker、K8S… 这些名词,全部都属于云计算的范畴。 …

    云计算 2023年4月11日
    00
  • 云计算的三种服务模式——–IaaS, PaaS和SaaS

    SaaS:Software-as-a-Service(软件即服务) 1. SaaS:Software-as-a-Service(软件即服务)提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过客户端界面访问,如浏览器。客户不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等等; PaaS:Platform-as…

    云计算 2023年4月13日
    00
  • 云计算服务模型,第 2 部分: 平台即服务(PaaS)

    平台即服务 (PaaS) 常常是最容易让人迷惑的云计算类别,因为很难识别它,常常把它误认为是基础设施即服务 (IaaS) 或软件即服务 (SaaS)。在这个分三部分的文章系列的第二部分中,了解 PaaS 的特点以及如何在企业中应用它。  英文原文:Cloud computing service models, Part 2: Platform as a Se…

    云计算 2023年4月12日
    00
  • “魅力河南 智慧富民——互联网+旅游精准扶贫项目”战略合作签约仪式成功举行

    “魅力河南 智慧富民——互联网+旅游精准扶贫项目”战略合作签约仪式成功举行,是一项旨在通过互联网+旅游的方式,促进河南省贫困地区的旅游业发展,带动当地经济增长,实现精准扶贫的战略合作项目。下面是一份关于该项目的详细攻略,包括项目背景、目标、合作方案、示例说明等。 1. 项目背景 河南省是中国中部的一个省份,拥有丰富的历史文化和旅游资源。然而,由于地理位置、交…

    云计算 2023年5月16日
    00
  • jQuery在header中设置请求信息的方法

    在 jQuery 中,我们可以通过设置请求头信息来实现一些特定的功能,例如设置请求的 Content-Type、Authorization 等信息。本文将深入浅析 jQuery 在 header 中设置请求信息的方法,包括使用方法和示例说明。 使用方法 在 jQuery 中,我们可以使用 $.ajax() 方法来发起 AJAX 请求,并在请求中设置请求头信息…

    云计算 2023年5月16日
    00
  • 30 个 Python 函数,加速数据分析处理速度

    30 个 Python 函数,加速数据分析处理速度 Python 作为一门高级编程语言,已经成为了数据科学家和工程师的首选语言之一。本文将介绍一些 Python 函数,可以帮助加快数据分析的处理速度,让分析更快更简单。 1. NumPy 的向量化操作 NumPy 库的主要优势之一就是它支持向量化操作。这意味着它能够在不使用显式循环的情况下进行操作。向量化的操…

    云计算 2023年5月18日
    00
  • .net Core 3.0 WebApi 创建Linux守护进程的方法

    请看下面的详细讲解: 创建Linux守护进程 在Linux系统中,可以通过将程序作为守护进程的方式来运行,使得程序在后台持续运行,不会因为用户退出或系统重启而停止。下面是关于如何创建Linux守护进程的步骤: 步骤一:编写WebApi代码 首先,需要编写一个.NET Core3.0 WebApi项目,并编写需要持续运行的代码(比如后台定时任务等)。代码可以参…

    云计算 2023年5月17日
    00
  • 云计算安全概述

      《盘点:云计算安全事故》阐述了2009年至2011年4月期间发生的重大云计算安全事故。例如:   ·2009年3月17日,微软的云计算平台Azure停止运行约22小时;   ·2009年6月,Rackspace遭受了严重的云服务中断故障;   ·2010年1月,几乎6万8千名的salesforce.com 用户经历了至少1个小时的宕机;   ·2010年…

    云计算 2023年4月12日
    00
合作推广
合作推广
分享本页
返回顶部