修改nginx上傳大文件的限制


通過設置nginx的client_max_body_size解決nginx+php上傳大文件的問題:

用nginx來做webserver的時,上傳大文件時需要特別注意client_max_body_size這個參數,否則會中斷在nginx的請求中,在php中是無法記錄到訪問的.

一般上傳大文件流程:

首先修改php.ini文件:

1.file_uploads on 是否允許通過HTTP上傳文件的開關。默認為ON即是開 
2.upload_tmp_dir – 文件上傳至服務器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾 
3.upload_max_filesize 8m 望文生意,即允許上傳文件大小的最大值。默認為2M 
4.post_max_size 8m 指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M 

  


一般來說,設置好上述四個參數后,在網絡正常的情況下,上傳<=8M的文件是不成問題的

但如果要上傳>8M的大文件的話,只設置上述四項還不一定能行的通。除非你的網絡真有100M/S的上傳高速,否則你還得繼續設置下面的參數。

1.max_execution_time 600 每個PHP頁面運行的最大時間值(秒),默認30秒 
2.max_input_time 600 每個PHP頁面接收數據所需的最大時間,默認60秒 
3.memory_limit 8m 每個PHP頁面所吃掉的最大內存,默認8M

  

webserver用的是nginx,在nginx的conf中添加了一個參數:
默認是1M,需要增大的話。

在nginx.conf中增加一句

client_max_body_size 30m;

  


重啟即可

30m表示最大上傳30M,需要多大設置多大。


免責聲明!

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



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