2010-05-24 56 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