2011-09-27 58 views
8

我有這一切似乎找到了可用的解決方案不工作一個非常普遍的問題。PHP連接重置上傳不管正確設置

我們正在接收業務的高量LAMP服務器。使用此服務器,我們執行常規文件提交上傳。在小文件上傳時,它可以很好地工作。在大約4-5MB的文件上,這個提交上傳失敗(有時可用,但很多次失敗)。

我們有我們的PHP配置如下:

max_input_time: 600 
max_execution_time: 600 
max_upload_size: 10M 
post_max_size: 10M 

的Apache設置:

Timeout: 600 
Keep-Alive Timeout: 15 
Keep-Alive: On 
Per Child: 1000 
Max Conn: 100 

因此,我不知道是否有人能幫助我與此有關。我們已經在網上找到了這些問題和解決方案,但沒有一個適用於我們的案例。

非常感謝。任何輸入/反饋都非常感謝!

+0

$ _FILES數組應該告訴你錯誤。 – 2011-09-27 19:01:45

+2

@Dagon不幸的是,我們甚至無法生成$ _FILES,因爲在上傳過程中,會顯示連接重置錯誤。 –

+0

如果您正在使用php-fpm,請在'/ etc/php5/fpm/php.ini'(不是'/ etc/php5/cli/php.ini')內更改'upload_max_filesize = 10M'(而不是'max_upload_size:10M') ).also如果你正在運行nginx,在'/ etc/nginx/nginx.conf'的http部分內添加'client_max_body_size 200M;' – alex

回答

6

連接coud在幾個地方被終止:

  1. 阿帕奇
  2. 後大小限制在php.ini中的php.ini的
  3. 內存限制PHP內的
  4. 輸入時間限制內.ini
  5. 執行時間限制在php.ini或set_time_limit()

我會增加所有這些,看看它是否仍然存在。但是你必須反彈apache才能使php.ini中的更改生效。

這些還受最終用戶的連接速度的影響,如果某些用戶失敗,這是因爲他們的連接比其他連接速度慢,並且他們與服務器的連接正在終止。