nginx响应超时,报错:upstream timed out (110: Connection timed out) while reading response header from upstr

  • 问题描述:
    • [error] 29605#0: *1 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 125.118.102.87, server: www.amai1.com, request: "GET /account/signin HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock", host: "www.amai1.com"
    • 日志文件生成的错误信息有必定的时间延迟
    • 报错信息:
    • 请求日志(同一时间点有多个请求)
  • 解决方法:
    • 根据报错信息查看网上的大部分的缘由是:nginx proxy的超时时间过短等nginx配置的优化等,可是修改了以后,依然报一样的错误
    • 根据请求日志的信息:
      • 上述能够看到在同一个时间点出现了两个请求,而且一个成功,一个失败,而且访问日志有不少499响应码的请求。而499响应码是说/* 499, client has closed connection */.就是说客户端主动关闭了链接,或者nginx两次提交post间隔过快也会出现此问题。

          一、客户端主动关闭链接,是由于过了设置的超时时长就会关闭链接。这个又回到了10s的超时时长和频繁的发生time out现象的问题上了。php

          二、提交POST请求过快,nginx会认为属于不安全的请求,便主动拒绝链接。这个有多是客户端那边不间断的测试数据致使,对于这种状况,能够对nginx的配置文件进行配置如下参数来进行不主动关闭。proxy_ignore_client_abort on;(不安全的方式),可是问题依然未解决
        python

    • 最后发现是redis服务器过时了,尴尬了一批,从新续期后,系统恢复了,搞定。
    • 试了一下,数据库服务器链接失败,session服务器过时一样会报上面的错误,因此之后报这样的错,能够看一下是不是数据库,session,redis服务器是否过时
  • 参考文档:http://blog.51cto.com/chenpipi/1682450
相关文章
相关标签/搜索