2010-05-24 57 views
1

我想附加一个8M .wav文件到Drupal中的“故事”。我可以附加类似的较小文件,但是当我尝试这一个和更大的尺寸时,我会在一分钟后或之后收到HTTP Error 0消息。我已经检查了我所有的最大上传量,最大内存大小都设置在64M和256M的8M以上。任何人都有这个问题上传文件?HTTP错误0 js /在drupal中上传时附加文件

+1

你上传文件通过AJAX提交按钮,或通过预览或保存节点? – gapple 2010-05-26 03:38:55

+0

我在通过AJAX上传文件时遇到了这个问题。 – 2011-06-29 03:07:21

回答

2

也许在上传文件之前达到脚本超时,尝试为您的php脚本设置更高的最大执行时间。

在PHP中的文件大小限制的upload_max_filesize和post_max_size要,你也可以尝试增加这些,也看http://drupal.org/node/97193

+0

超时时间已设置为3分钟,上传失败后2左右,我可以尝试将其设置为更高 – mattbtay 2010-05-24 21:10:50

+0

@ user349294也有不同的选项限制最大文件大小。这些也可能是问题,尽管大多数情况下他们应该在尝试上传之前失败。第一个是在php.ini中,那么在默认的Drupal中至少有一个,如果你使用的是Filefield,则会有更多的文件大小限制。 – 2010-05-24 21:22:25

+1

直到文件完全上传后,php执行时间才会开始;您可能需要花费一个小时上传2GiB文件,并且30秒的max_execution_time值不会成为问题。输入时间是可能的,但php *不应该花费太多时间解析请求数据。 – gapple 2010-05-26 03:35:55

2

似乎有很多的这个错误的可能原因,主要的问题是,Drupal的核心不报告关于AJAX失败的任何细节 - 因此任何事情都可能出错,但你只看到“错误0”文本。

诊断这种情况的一种可能方式是关闭JavaScript(例如,通过在FireFox中使用NoScript)并再次尝试上传 - 然后您可能会看到完整的错误文本,这将引导您进一步调查。

一些更多的讨论和一些可能的解决方案(你会发现有很多,因为有许多可能的原因这个问题)可以在这里找到:http://drupal.org/node/297035?mode=2&sort=2

+0

非常感谢!您的提示禁用JavaScript非常有用。当我这样做时,我发现问题不是Drupal,而是反向代理nginx:'413 Request Entity Too Large(nginx/0.7.67)'。当我设置nginx指令'client_max_body_size 30M;'问题没有了;) – pklaus 2011-05-24 13:08:31

+0

很高兴我可以帮助:) – NPC 2011-07-15 11:38:41

2

我安装了jQuery更新模块和其固定。

安装从jQuery更新: http://drupal.org/project/jquery_update

+0

当您安装jQuery模块时,它将jQuery的默认版本设置为1.5,并且仍然出现错误。我使用admin/config/development/jquery_update将其更改为版本1.8,错误消失。 – John81 2013-03-15 17:55:40