OSCP 请求随机出现在 webpagetest.org 个结果中

OSCP requests randomly appear in webpagetest.org results

当使用 webpagetest.org 测试网站性能时,最终一些测试包含我没有预料到的请求,因为它们不是由我的代码中的任何内容发起的(HTML、CSS , JavaScript).更令人惊讶的是,发出请求的用户代理与正在使用的浏览器不匹配。

示例: https://www.webpagetest.org/result/170425_AH_NP7/1/details/#waterfall_view_step1

尽管我运行使用GoogleChrome进行了测试,但第二个请求是由User-Agent完成的:Microsoft-CryptoAPI/6.1 主持人:gm.symcd.com

重新运行进行相同的测试通常会导致 运行 没有任何这些请求。

这发生在 www.webpagetest.org 以及我们公司在 windows 主机上的本地 WPT 安装上。

User-Agent 首先让我怀疑 Windows Update Agent 作为来源,但主机 gm.symcd.com 似乎属于 Symantec。

有没有人经历过同样的行为? 防止这些意外请求的最佳方法是什么?

那些看似随机的请求是 OSCP 查找 (RFC 2560: Online Certificate Status Protocol),以确保 SSL 证书仍然有效且未被撤销。

除非服务器执行 OSCP 装订 (RFC 6961: Multiple Certificate Status Request Extension),否则客户端仅需要进行 OSCP 查找,这意味着它会在 SSL 证书链旁边提供签名的权威 OSCP 响应。

因此,正如 Patrick Meenan 指出的那样,"the performance fix to make them not happen is to enable OCSP Stapling on the web server."

如果服务器不装订 OSCP 数据,则客户端应发出 OSCP 请求,除非它已经从最近的 OSCP 请求中获得有效的缓存响应。在 Windows 客户端上,OSCP 请求将通过操作系统的 CryptoAPI 提交,除非已经存在有效的缓存响应。

为确保可重复的网页测试结果,测试应要求证书缓存在测试开始时为空,webpagetest.org 在高级设置 -> 高级 -> [=23= 中进行配置].

OCSP 用于检查证书的吊销。答案可以缓存几天

如果您想避免向 CA 发出 OCSP 请求,您可以在您的服务器上激活 "OCSP stapling":您的服务器会定期向 CA 发出请求,并且在客户握手期间提供签名答案:这将为您的所有访问者节省时间。