$ssl_client_v_remain
$ssl_client_v_remain 返回在处理当前证书之后,SSL 客户端证书链中剩余的字节数。 — NGINX Core (HTTP)
$ssl_client_v_remain
NGINX Core (HTTP)
说明
变量 $ssl_client_v_remain 属于 NGINX 的 SSL 模块,在处理客户端证书时使用。当客户端为认证提交证书时,通常会发送一个证书链。$ssl_client_v_remain 变量表示在处理完当前证书后,该证书链中还剩余多少字节。在涉及多个证书的复杂认证场景(例如 mutual TLS (mTLS) 配置)中,这一点尤其有用。 该变量在 SSL 握手发生时设置,并在成功完成 SSL 握手后对服务器指令可见。它返回一个数值,表示尚未读取的证书数据的剩余字节数。通常,它的返回值可能从 0(当所有证书都已处理)到客户端发送的初始证书链的总长度不等。 例如,如果客户端发送了一个总计 300 字节的三证书链,且第一个证书(大约 100 字节)已处理,则在那之后 $ssl_client_v_remain 会报告 200 字节。该信息使 NGINX 能够根据 SSL 服务器的配置以及基于有效证书的任何指定身份验证要求做出有根据的决策。
配置示例
server {
listen 443 ssl;
ssl_certificate server.crt;
ssl_certificate_key server.key;
location / {
if ($ssl_client_v_remain > 0) {
add_header X-SSL-Client-Remain $ssl_client_v_remain;
}
}
}子系统
http可缓存
是上下文
http, server, location, if⚠
请确保已正确配置并启用 SSL 才能使用此变量;否则,该变量将不会被设置。
⚠
只有在 SSL 握手完成后,此变量才可用。
⚠
如果未启用客户端身份验证,此变量可能返回0或意外的值。