2014-01-14 62 views
0

當我嘗試上傳文件使用jQuery文件上傳時,一切按計劃工作的任何數量的文件,直到5.當我嘗試POST 5個或更多文件服務器響應與404未找到,但將4個文件發佈到它上傳和處理完全正常的相同URL。可能是什麼問題?404文件上傳後沒有找到5個文件

我在運行nginx,php-fpm和laravel。我甚至在嘗試高限後將client_max_body_size設置爲0。

訪問日誌4個文件

192.168.1.144 - - [14/Jan/2014:10:49:28 -0500] "POST /admin/job/1 HTTP/1.1" 302 449 "http://192.168.1.100:8080/admin/job/1/edit" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36" "-" 

訪問日誌5個文件

192.168.1.144 - - [14/Jan/2014:10:45:01 -0500] "POST /admin/job/1 HTTP/1.1" 404 223 "http://192.168.1.100:8080/admin/job/1/edit" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36" "-" 

附上鉻控制檯的圖像。

5圖像上載測試

5 Images Upload Test

4圖像上載測試

4 Images Upload Test

編輯: 代碼POST途徑:

public function update($id) 
    { 
     $input = \Input::except('photos'); 
     $job = \Job::findOrFail($id); 
     $job->fill($input); 

     if(Input::hasFile('photos')) 
     { 
      $photos = Input::file('photos'); 

      /** 
      *@var $photos Uploadedfile[] 
      */ 
      foreach ($photos as $index => $photo) 
      { 
       $fileName = \Str::random(8) .'.'. $photo->getClientOriginalExtension(); 
       $file = $photo->move(public_path() .'/job_images/', $fileName); 

       $jp = new \Job\Photo(array('image' => $fileName, 'description' => $input['description'][$index])); 
       $job->photos()->save($jp); 
      } 
     } 

     $job->save(); 
     return Redirect::route('admin.job.show', $id); 
    } 
+0

你可以發佈路由重定向到的代碼嗎? – Pat

+0

@Pat上傳,對不起, –

+0

我會建議使用死亡和轉儲之前,在foreach之前,並返回之前,看看它到底在哪裏,但失敗。 – Pat

回答

0

所以挖得更深一些後,我發現,錯誤被顯示出來在php-fpm的錯誤日誌以下面的消息

[14-Jan-2014 16:33:07 UTC] PHP Warning: POST Content-Length of 9142976 bytes exceeds the limit of 8388608 bytes in Unknown on line 0 
[14-Jan-2014 16:38:45 UTC] PHP Warning: POST Content-Length of 12260767 bytes exceeds the limit of 8388608 bytes in Unknown on line 0 

這使我的問題與PHP的是,我開始變的post_max_size到0但需要將upload_max_filesize = 2M提高到一個更高的限制,這也解決了我的問題。

我也將nginx配置client_max_body_size的限制提高到了50M;

+1

是的,我要說的是看看「upload_max_filesize」和「post_max_size」 – Pat