今天客服咨询陆陆续续有接到用户无法访问网站的情况,均是提示网页无法访问、Internet Explorer无法打开页面等情况,由于周五的时候有对Haproxy进行如下的优化

timeoutclient 30s

timeout http-keep-alive 10s

option http-keep-alive

option http-server-close

option nolinger


最先排除的就是

option nolinger

参数,因为这个参数强制关闭TCP连接,果然关闭这个参数后网站就正常打开。


分析:

正常情况下用户到服务器使用TCP进行连接,当客户端通过三次握手与服务器建立TCP连接,如果因为客户端网速慢导致TCP被强制关闭,所以出现的错误就是连接被重置。

可以知道option nolinger就是发送RST信号使得客户端与服务器关闭连接。