Cloudflare 尝试为尽可能广泛的用户代理(浏览器、API 客户端等)提供兼容性。但是,支持的具体客户端集可能因不同的 SSL/TLS 证书类型、访客的浏览器版本以及签发证书的证书颁发机构(CA)而有所不同。
Cloudflare Universal SSL 仅支持使用 服务器名称指示(SNI) ↗ TLS 协议扩展的浏览器和 API 客户端。
此外,对于 Free 套餐的 zone,Universal SSL 仅与支持椭圆曲线数字签名算法(ECDSA)的浏览器兼容。
付费套餐具有额外兼容性,还支持 RSA 算法。
有关 Cloudflare SSL/TLS 产品、可用不同算法以及每个 CA 的浏览器兼容性的详细列表,请参阅证书颁发机构。
尽管 SNI 扩展 ↗ 到 TLS 协议在 2003 年标准化,但一些浏览器和操作系统直到 2006 年 TLS 1.1 发布时才实现此扩展(移动浏览器则是 2011 年)。如果您的访客使用 2011 年之后未更新的设备,他们可能没有 SNI 支持。
要支持非 SNI 请求,您可以:
-
上传 Custom 证书并将客户端支持指定为
Legacy值。请注意,
LegacyCustom 证书与 BYOIP 不兼容,与 Universal SSL 或 Advanced 证书 不同,Cloudflare 不管理 Custom 证书的签发和续期。 -
(仅限 BYOIP 客户)Enterprise 客户可以选择将自己的 IP 前缀引入 Cloudflare 网络,并在地址映射中指定用于任何非 SNI 握手的默认 SNI。
-
(仅限付费套餐)联系 Cloudflare 支持团队并为您的 zone 请求一组非 SNI IP。
HTTPS 服务(HTTPS)记录允许您预先向客户端提供有关如何连接到服务器的信息,而无需初始明文 HTTP 连接。
如果您的域名启用了 HTTP/2 或 HTTP/3、已代理 DNS 记录,并且也使用 Universal SSL,Cloudflare 会自动动态生成 HTTPS 记录,向客户端通告如何连接到您的服务器。
Cloudflare 的 OCSP 实现对纯 HTTP 连接默认使用 HTTP/1.1。
对于 HTTPS 连接,如果服务器通过 TLS ALPN(应用层协议协商)扩展支持 HTTP/2,客户端会自动尝试使用 HTTP/2。如果服务器不支持 HTTP/2,将回退到 HTTP/1.1。