上传图片过大时nginx报错

项目用到spring cloud,前端项目使用nginx进行代理,在上传大图片时时间过长,在页面的F1中查看接口状态,发现报500的错误,这是在后台服务中的网关服务的日志中发现报连接后台上传服务超时没有返回,这时去查看网关zuul的配置文件,修改一下相关的时间超时配置。修改后如下,将超时时间适当的配置大一些。

hystrix:

  command:

    default:

      execution:

        isolation:

          thread:

            timeoutInMilliseconds: 300000

ribbon:

  ConnectTimeout: 300000

  ReadTimeout: 300000

修改了如上配置后,在zuul中不报超时的错误了,但是上传大文件的时候还是失败,但是错误变成了504超时,这时发现是nginx配置的超时时间过小导致的,对nginx的配置文件添加相应的超时配置。

#该指令设置与upstream server的连接超时时间

    proxy_connect_timeout 750;

#该指令设置与代理服务器的读超时时间。它决定了nginx会等待多长时间来获得请求的响应。这个时间不是获得整个response的时间,而是两次reading操作的时间

proxy_read_timeout 6000;

    fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

这两个选项.

        fastcgi_read_timeout是指fastcgi进程向nginx进程发送response的整个过程的超时时间

        fastcgi_send_timeout是指nginx进程向fastcgi进程发送request的整个过程的超时时间

这两个选项默认都是秒(s),可以手动指定为分钟(m),小时(h)等


通过上面的配置之后图片可以正常上传上去,虽然花费的时间较长,但总算是传上去了。

你可能感兴趣的:(上传图片过大时nginx报错)