修改PHP上傳文件的大小限制


前面我們瞭解瞭如何《使用PHP實現文件上傳和多文件上傳》。不過,在PHP的默認配置情況下,當上傳的文件大小超出一定的限制時,我們將得到如下的錯誤提示信息:

Warning: POST Content-Length of 625523488 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

上述錯誤信息的大致意思是,我們使用POST請求提交的數據大小超過了服務器的最大限制數(8388608字節=8MB)。

出現上述錯誤的原因是,在PHP的配置文件php.ini中,默認存在如下配置信息(在php.ini中,行首的分號";"表示當前行是註釋,不會生效):

  1. ;腳本解析輸入數據(類似 POST GET)允許的最大時間,單位是秒。 它從接收所有數據到開始執行腳本進行測量的。
  2. max_input_time = 60
  3. ;允許客戶端單個POST請求發送的最大數據
  4. post_max_size = 8M
  5. ;是否開啓文件上傳功能
  6. file_uploads = On
  7. ;文件上傳的臨時存放目錄(如果不指定,使用系統默認的臨時目錄)
  8. ;upload_tmp_dir =
  9. ;允許單個請求上傳的最大文件大小
  10. upload_max_filesize = 2M
  11. ;允許單個POST請求同時上傳的最大文件數量
  12. max_file_uploads = 20

從上面的配置信息中我們可以看出,PHP的默認配置信息就是導致PHP文件上傳時提示文件大小超出限制的「罪魁禍首」。筆者已經在上述配置信息中給出了各個指令選項對應的中文註釋信息,大家可以根據自己的實際需求情況對php.ini配置文件進行相應的修改。

發佈了233 篇原創文章 · 獲贊 6 · 訪問量 48萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章