Django上传请求数据读取失败错误

Django上传请求数据读取失败错误,django,upload,uploadify,Django,Upload,Uploadify,我有一个Django应用程序,它接受来自jQ的上传,jQ插件使用flash上传文件并给出进度条 大约150k以下的文件可以工作,但较大的文件总是会失败,并且几乎总是在192k左右(即3个块)完成,有时在160k左右。我得到的例外情况如下 exceptions.IOError request data read error File "/usr/lib/python2.4/site-packages/django/core/handlers/wsgi.py", line 171, in _get_

我有一个Django应用程序,它接受来自jQ的上传,jQ插件使用flash上传文件并给出进度条

大约150k以下的文件可以工作,但较大的文件总是会失败,并且几乎总是在192k左右(即3个块)完成,有时在160k左右。我得到的例外情况如下

exceptions.IOError
request data read error
File "/usr/lib/python2.4/site-packages/django/core/handlers/wsgi.py", line 171, in _get_post
    self._load_post_and_files()
File "/usr/lib/python2.4/site-packages/django/core/handlers/wsgi.py", line 137, in _load_post_and_files
    self._post, self._files = self.parse_file_upload(self.META,     self.environ[\'wsgi.input\'])
File "/usr/lib/python2.4/site-packages/django/http/__init__.py", line 124, in parse_file_upload
    return parser.parse()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 192, in parse
    for chunk in field_stream:
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 314, in next
    output = self._producer.next()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 468, in next
    for bytes in stream:
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 314, in next
    output = self._producer.next()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 375, in next
    data = self.flo.read(self.chunk_size)
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 405, in read
    return self._file.read(num_bytes)
在Django开发服务器上本地运行时,大文件可以工作。
我已经尝试设置我的
文件上传处理程序=(“django.core.files.uploadhandler.TemporaryFileUploadHandler”)
,以防它是内存上传处理程序,但没有任何区别

有人知道如何解决这个问题吗?

问题可能是:

  • 您的internet连接(一些防火墙阻止了大型上传,只需尝试上传到其他服务即可进行测试)
  • 您的webbrowser(尝试禁用flash以查看是否有效)
  • 您的Web服务器(可能您的Web服务器禁止大型上载?)

所以。。。为了提供更多帮助,您必须向我们提供一些信息,说明问题出在哪一部分(应该很容易测试),如果是Web服务器(我猜是这样的),您运行的是什么类型的Web服务器,什么类型的Python处理程序(mod_wsgi、mod_Python、fastcgi等等)

这在MediaTemple中很常见——我遇到了这个问题,修好了,不知怎么又坏了。它必须处理NFS锁定以及django存储模块使用的系统调用

。。。(10分钟后)

找到它:

有人想运行最新的1.1吗 svn发行版会注意到 从那时起,上述修复不再有效 临时文件上载处理程序现在使用 锁定代码也会被删除。变通办法 直到mediatemple和/或django开发人员 我想这是要编辑的 django.core.files.locks并更改 两次呼叫fcntl.lockf至 蜂群

下面是一个相关的错误报告 任何感兴趣的人:

->

刚刚在另一个站点上测试了上传一个大文件,没有问题。我正在运行python 2.4、django 1.1和mod_wsgi。我现在将尝试在没有flash uploader的情况下测试上传。我可以使用Django管理界面(标准格式文件字段)上传到同一服务器上的不同Django项目。所以可能是flash或uploadify的问题,我不知道从哪里开始解决。另一次更新,我创建了一个表单发布到uploadify的相同位置,我得到了相同的错误。所以不是我的浏览器或互联网连接,不是我的服务器,不是上传。我能看到的工程与非工程的主要区别是使用django管理界面上传到模型文件字段,而坏掉的只是将下载放在文件夹中。但是我的错误是读取错误,“读取错误”意味着服务器由于某种原因失去了与客户端的连接。所以在上传过程中,连接以某种方式断开,服务器无法再从客户端读取新数据。但我无法解释,如果它也不能正常使用上传表单。。。您正在运行什么浏览器、服务器和Python处理程序?我猜您的Web服务器/Web浏览器中有一些bug正在攻击您。我使用的是FF3/windows。在Chrome/windows中,它在失败之前会达到更高的百分比。在FF3/mac中,它可以工作!我不知道你所说的Python处理程序是什么意思,是mod_wsgi/apache吗?我正在media temple DV服务器上运行centOS(python 2.4,django 1.1)