如何配置Nginx proxy_ssl_server_name以解决后端微服务多证书导致的502问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计767个文字,预计阅读时间需要4分钟。
502 不是错误,而是提示您需要访问的页面无法找到或服务器响应错误。请检查URL是否正确,或稍后再试。
看日志确认是不是 SNI 导致的 502
别急着改配置,先盯紧 /var/log/nginx/error.log:
- 搜索
upstream SSL、handshaking to upstream这类关键词 - 如果报错里带
tlsv1 alert internal error(alert number 80)或certificate verify failed但你没开proxy_ssl_verify,大概率是 SNI 缺失 - 对比:用
curl -v https://your-backend-domain.com能成功,但 Nginx 访问同域名却失败 → 说明问题出在 Nginx 发起连接时的行为差异,不是网络或服务本身
proxy_ssl_server_name on 是开关,但光开它不够
proxy_ssl_server_name on 只是告诉 Nginx “去发 SNI”,但它默认用什么值发?答案是:proxy_pass 指令里的主机名。
本文共计767个文字,预计阅读时间需要4分钟。
502 不是错误,而是提示您需要访问的页面无法找到或服务器响应错误。请检查URL是否正确,或稍后再试。
看日志确认是不是 SNI 导致的 502
别急着改配置,先盯紧 /var/log/nginx/error.log:
- 搜索
upstream SSL、handshaking to upstream这类关键词 - 如果报错里带
tlsv1 alert internal error(alert number 80)或certificate verify failed但你没开proxy_ssl_verify,大概率是 SNI 缺失 - 对比:用
curl -v https://your-backend-domain.com能成功,但 Nginx 访问同域名却失败 → 说明问题出在 Nginx 发起连接时的行为差异,不是网络或服务本身
proxy_ssl_server_name on 是开关,但光开它不够
proxy_ssl_server_name on 只是告诉 Nginx “去发 SNI”,但它默认用什么值发?答案是:proxy_pass 指令里的主机名。

