nginx 504 client timed out (110: Connection timed out) while SSL handshaking for web browser

背景如下:

两台服务器需要去访问外网的https网址去获取文件,但这两台服务器无法与外界服务器通信,只能通过一台前置pop机可以访问外网。

需要在前置pop机上配置nginx去转发来自于两台服务器的http请求,将其转发为https请求,请求外网

nginx部署好后,进行外网请求,通过nginx请求日志发现,只有前两次请求成功200,后续都是504 client timed out (110: Connection timed out) while SSL handshaking for web browser on mobile device

刚开始以为是请求大量数据文件,导致读取、连接超时,调整nginx配置,增加超时时间,禁止nginx服务器写缓存。

发现nginx日志中出现大量这类日志 502 SSL handshaking

SSL_do_handshake() failed (SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number) while SSL handshaking to upstream, client:......

根据反馈是短时间内连续性请求则会返回502错误,查询资料发现nginx默认会尝试重新使用SSL上游的SSL会话。

解决方式是配置文件增加:

 proxy_ssl_session_reuse off;

location / {
  ...
         ...
	 proxy_ssl_session_reuse off;
  ...
...
}

完美解决了这个问题 后续日志中没有出现此类SSL handshaking日志。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值