Django wsgi - 504上传大文件

时间:2017-02-25 21:18:04

标签: django apache file-upload mod-wsgi

我有一个与Apache和mod_wsgi一起设置的Django应用程序。这个应用程序将提供相当大的文件,由管理员通过管理面板上传。

我的问题是大文件(大于15gb ish)在上传时会触发504错误。 Apache错误日志显示为:

[Fri Feb 24 12:54:56.455187 2017] [wsgi:error] [pid 18263] [client 2001:700:300:34:c9c3:2908:2c90:f44:52116] Timeout when reading response headers from daemon process 'processName': /path/to/wsgi.py, referer: https:/mydomain.com/admin/appname/modelname/add/

我的理解是Django要求在发送响应之前上传整个文件。由于上传文件所需的时间,该过程超时。话虽如此,在整个文件上传之前不会触发504错误。

我发现其他人和我有同样的问题,但我还没有找到问题的解决方案。

有没有人建议我如何才能做到这一点?

我在Django FileUploadHandler课上做了一些阅读。是否可以创建一个自动响应请求的自定义FileUploadHandler,然后与Celery异步处理上传?

0 个答案:

没有答案