2013-09-29 50 views
6

我的開發機器上使用此Tornado upload app略加修改的版本長上傳文件時,我收到龍捲風服務器和一個空白頁以下錯誤,每當我嘗試上傳大文件(+ 100MB ):「內容長度太」使用龍捲風

[I 130929 7點45分44秒的httpserver:330]從 127.0.0.1格式錯誤的HTTP請求:Content-Length的過長

這是沒有問題的文件上傳到〜20MB 。

所以我不知道是否有龍捲風的web服務器任何特定的文件上傳限制?或者它與機器的可用內存有關。無論原因是什麼,我怎樣才能克服這個問題?

回答

11

龍捲風對上傳大小可配置限制(默認爲10MB)。您可以通過將max_buffer_size傳遞給HTTPServer構造函數(或Application.listen)來增加限制。但是,由於Tornado(版本3.1)將整個上傳主體讀入內存中的單個連續字符串,因此將限制設置得過高是很危險的。一種流行的替代方法是nginx upload module

+1

在tornadoweb 4,我們有tornado.web.stream_request_body裝飾,不需要nginx的了。 – nagylzs

+0

默認值現在是100mb(截至此評論日期,Tornado訴4.4.1) – gordonc