H18错误:Heroku上的Django app Media Upload失败

时间:2017-06-15 13:41:48

标签: django heroku file-upload amazon-s3

我们的Django App失败了媒体上传。对我们来说这已经是一段时间了。然而,大约一个星期以来,它一直未能上传媒体。我们的媒体文件存储在S3上。

在检查时,上传的文件在S3存储桶中找到...但是,当应用程序抛出应用程序错误时,日志会显示以下消息...

Screen Shot 2017-06-14 at 2.47.30 PM.png

1 个答案:

答案 0 :(得分:0)

在GitHub(https://github.com/benoitc/gunicorn/issues/840

上找到了这个答案

大家好,我们使用Flask + Gunicorn + Heroku在制作中遇到了这个问题,无法找到原因或解决方法。

对于一个带有POST参数的特定POST请求,请求将失败,并且Heroku的路由器中的H18错误(sock = backend)表示服务器在它不应该关闭时关闭套接字。

我们开始减少该失败端点的响应大小,直到我们将其缩小到13k左右。如果我们发送的数量少于13k,那么响应将始终有效。如果我们发送超过13k,那么响应几乎总是不起作用。

可以在https://github.com/erjiang/gunicorn-issue处获得重现此代码的代码 - 只需将repo部署到Heroku,然后按照自述文件中的说明进行操作。