Bootstrap

nginx做反向代理报错peer closed connection in SSL handshake while SSL handshaking to upstream

目录

一、具体报错

(一)背景简述

(二)其他说明

二、分析和解决

(一)配置域名访问反向代理未解决

(二)配置proxy_ssl_server_name解决


一、具体报错

(一)背景简述

        有个业务系统A部署在云上,由于某种原因需要用到nginx反向代理业务系统A。

        部署完nginx反向代理,提供服务的时候,出现了如下报错。

2022/09/19 15:11:40 [error] 20660#0: *12 peer closed connection in SSL handshake while SSL handshaking to upstream, client: 10.10.10.10, server: 10.10.20.10, request: "GET / HTTP/1.1", upstream: "https://1.1.1.1:443/", host: "10.10.20.10"

(二)其他说明

        以上报错的内容,对IP地址进行了更改,脱敏掉了真实数据。

        经过测试,代理公司云上的其他业务系统没有问题,只有在反向代理业务系统A的时候才出现这个报错。

二、分析和解决

(一)配置域名访问反向代理未解决

        看报错日志提示ssl握手有问题,一开始的反应是将访问IP改成访问域名,但是配置完域名访问反向代理之后没有效果。

(二)配置proxy_ssl_server_name解决

        在云上的业务系统A,同一个IP地址和端口绑定了多个域名,在代理的时候需要配置proxy_ssl_server_name on参数传递域名信息。

        示例如下:

location / {

proxy_ssl_server_name on;

proxy_pass https://test.com.cn;

......

}

        配置proxy_ssl_server_name on之后解决。

;