使用Tornado上传文件时“内容长度太长”

时间:2013-09-29 06:00:23

标签: file-upload tornado

在我的开发机器上使用此Tornado upload app的略微修改版本,每当我尝试上传大文件(+ 100MB)时,我都会从龙卷风服务器和空白页面收到以下错误:

  

[I 130929 07:45:44 httpserver:330]格式错误的HTTP请求来自   127.0.0.1:内容长度太长

将文件上传到大约20MB没有问题。

所以我想知道Tornado Web服务器中是否有任何特定的文件上传限制?或者它与机器的可用内存有关。无论原因是什么,我怎样才能克服这个问题呢?

1 个答案:

答案 0 :(得分:12)

Tornado对上传大小有一个可配置的限制(默认为10MB)。您可以将max_buffer_size传递给HTTPServer构造函数(或Application.listen)来增加限制。但是,由于Tornado(版本3.1)将整个上载主体读入内存中的单个连续字符串,因此限制太高会很危险。一个流行的替代方案是nginx upload module