ssl 协商对同一个域发生多次

标签 ssl

我已经用 webpagetest 进行了速度测试。我的网站受 SSL 保护。由于某种原因,SSL 协商发生了两次。

enter image description here

索引 html 有一个 SSL 协商似乎是正确的。第二个请求是通过fetch完成的。我假设不需要第二次 SSL 协商。

fetch("/api/menu")

对于同一域的剩余请求,不再进行协商。

最佳答案

首先是 menu 的 TCP 连接,然后是 SSL 设置。这意味着它没有使用先前建立的 TCP 连接来创建新连接,而是创建了一个新连接。这个新的当然也需要 SSL。

当使用 HTTP/1.1 时,浏览器打开同一个站点的多个连接是很正常的,因为在一个连接中一次只能处理一个请求(这与 HTTP/2 不同)。由于在您的情况下第一个连接仍在用于其他请求,因此创建新连接可能会加快总交付时间。

还可以看出,第二次 SSL 设置比第一次花费的时间更少。这可能是因为它正在执行 session 恢复,即使用与在第一个连接中建立的相同的 SSL session 来加速 TLS 握手。

关于ssl 协商对同一个域发生多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50738913/

相关文章:

ssl - VestaCP 错误代码 2

c# - 通过 MongoDB C# 驱动程序使用 SSL 连接到 DocumentDB

c++ - 为什么 MSVC 静态局部变量的线程安全初始化使用 TLS

php - reCAPTCHA (Zend_Service_ReCaptcha) 抛出 "Unable to Connect to tcp://api-verify.recaptcha.net:80"

node.js - 通过 SSL 服务 socket.io

ssl - 寻找有关 "HTTP to HTTPS"的分步指南

security - 私钥密码的目的是什么?

java - 我怎样才能有效地找出我需要添加到我的 Java keystore 的证书?

ssl - 为什么不信任有效的中间 x509 证书?

ssl - 证书用途,何时验证?