php大文件上傳失敗的原因及解決方法


php.ini無法上傳大文件解決辦法

1、打開php.ini

 

2、查找post_max_size:(修改上傳大小限制)

表單提交最大數值,此項不是限制上傳單個文件的大小,而是針對整個表單的提交數據進行限制的默認為8m,設置為自己需要的值,此參數建議要設置比upload_max_filesize大一些

 

3、查找file uploads:(修改上傳開關限制)

是否允許通過http上傳文件的開關,確認file_uploads = on

 

4、查找upload_tmp_dir:(修改上傳臨時文件限制)

文件上傳至服務器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾如果系統報錯提示有“xxx臨時目錄xxx”的話,這個目錄就需要你來設置一個有效目錄,沒報錯就不用管

 

5、查找upload_max_filesize:(修改上傳大小限制)

允 許上傳文件大小的最大值,默認為2m,設置為自己需要的值此參數建議不要超過post_max_size值,因為它受控於post_max_size值 (就算upload_max_filesize設置了1g,

而post_max_size只設置了2m時,大於2m的文件照樣傳不上去,因為它受控於 post_max_size值)

 

6、如果要上傳大於8m的文件,還需要對下面的參數也進行設置:(修改上傳時間限制)

查找max_execution_time = 600 ;每個php頁面運行的最大時間值(秒),默認30秒

max_input_time = 600 ;每個php頁面接收數據所需的最大時間,默認60秒

memory_limit = 8m ;每個php頁面所需要的最大內存,默認8m

 

nginx上傳大文件解決辦法

1.client_body_buffer_size 盡量設置的大點,這是基於速度的考慮,如果因為設置的過小,導致上傳的文件老要寫磁盤,那速度就太慢了。

2.client_body_temp_path 路徑要有可寫權限,這個是明顯的錯誤了。改正了就好

3.client_max_body_size 設置上傳文件的最大值,這個是基於安全的考慮,我們認為正常用戶不會或者基本不會上傳太大的文件。

可以設置為client_max_body_size 100m; 或者按照自己的業務來設置這個值。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM