几分钟没有访问后,首次访问我的网站时,连接 100% 被“重置”。
当打开调试时,我收到此消息,以及 400 错误请求状态消息:
client prematurely closed connection while reading client request line
我读到过,这可能是由 large_client_header_buffers 设置引起的。我的网站上有 Google Analytics。使用实时 http 标头,我得到了以下请求:
``GET /__utm.gif?utmwv=5.3.7&utms=35&utmn=745612186&utmhn=domain.com&utmcs=UTF-8&utmsr=1920x1080&utmvp=1841x903&utmsc=24-bit&utmul=en-us&utmje=1&utmfl=11.4%20r402&utmdt=2006Scape%20Forums%20-%20General&utmhid=2004697163&utmr=0&utmp=%2Fservices%2Fforums%2Fboard.w s%3F3%2C4&utmac=UA-25674897-2&utmcc=__utma%3D68455186.1647889527.1351640625.1352446442.1352451659.100%3B%2B__utmz%3D68455186.1352097329.64.2.utmcsr%3Ddomain.com%7Cutmccn%3D(referral)%7Cutmcmd%3Dreferral%7Cutmcct%3D%2Fservices%2Fforums%2Fboard.ws%3B&utmu=q~ HTTP/1.1 `
我的 nginx 中的 large_client_header_buffers 设置为4 8k
,所以我不知道这是否是问题所在。立即请求的第一个“重置”请求都成功了。
答案1
大多数情况下400
访问日志中的状态如下:
127.0.0.1 - - [09/Nov/2012:16:01:01 +0000] "-" 400 0 "-" "-"
和消息
... [信息] ... 客户端在读取客户端请求行时过早关闭连接...
nginx 错误日志中出现此错误的原因是由于浏览器打开了与 nginx 的额外连接,然后关闭了该连接而没有向其发送任何请求。这种情况通常出现在客户端浏览器为 Chrome 且请求的页面上没有太多资源需要加载时。
这些信息本身是无害的,不是什么问题(这就是为什么日志记录级别是信息)。如果您看到这些消息的同时还出现了其他问题,您可能需要更详细地说明您遇到的问题。如果您只是看到这些消息,请不要害怕,它们是无害的。