宝塔 Nginx 反代网站 出现502 Bad Gateway ,错误信息显示 SSL_do_handshake() failed 的解决方法
你是否遇到过使用宝塔 Nginx 反代网站时出现 502 Bad Gateway , 明明正常反代都没问题 , 可是反代就 502 Bad Gateway , 查看错误日志显示 :
*6565 SSL_do_handshake() failed (SSL: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error:SSL alert number 80) while SSL handshaking to upstream
初步研究问题发现是由于网站启用了 SNI , 宝塔Nginx反代默认没有加入 SNI proxy_ssl_server_name on; ,Nginx 无法成功 handshake 上游的 SSL , 导致 502 Bad Gateway.
解决方法:
进入宝塔的反向代理控制页面
选中出现 SSL_do_handshake() failed 的代理的“编辑配置”
在 proxy_set_header REMOTE-HOST $remote_addr;
下一行加入:
proxy_ssl_server_name on; proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;proxy_ssl_server_name on;
保存,重启Nginx 即可.
现在你就可以正常反代拉!