PHP 上傳/POST 大小 限制 [如何更改php 組態只允許 2MB 的最大上傳限制 『php上傳檔案限制』]
PHP 上傳/POST 大小 限制 [如何更改php 組態只允許 2MB 的最大上傳限制 『php上傳檔案限制』]
資料來源: https://blog.xuite.net/hsuming007/blog/46208488
如何利用瀏覽器的介面搭配PHP函式上傳檔案,在這之前於php.ini中有幾點必須注意到的是:
‧file_uploads 項目是否設定為On(預設)。 ‧upload_max_filesize 為上傳檔案的最大限制,預設為2MB(2M)。
如果想要使上傳的檔案大小上限增加時,除了將上述的upload_max_filesize加大以外,另外還需要考慮到:
‧max_execution_time 最大執行時間,預設為30秒。 ‧memory_limit 記憶體限制,預設為8M。 ‧post_max_size POST的資料量限制,預設為8M。
補充一:
您也可以開一個檔案 .htaccess 加入以下code 碼
php_value upload_max_filesize 10M
補充二:
一、修改php.ini文件。
找到php中的php.ini文件,用筆記本打開:
1、尋找post_max_size,指通過表單POST給PHP的所能接收的最大值,包括表單裏的所有值,預設為8M,看你自己需要進行修改。
2、尋找File Uploads,首先確認file_uploads = on ;是否允許通過HTTP上傳檔的開關,預設為ON「即是開啟」。 upload_tmp_dir ;設定上傳之HTTP檔案暫時存放目錄
尋找upload_max_filesize ;即允許上傳檔大小的最大值。預設為2M。
3、如果要上傳>8M的檔,那麼只設置上述四項還不定一定可以。最好對下面的參數也進行設置:
尋找
max_execution_time = 600 ;每個PHP頁面運行的最大時間值(秒),預設30秒。 max_input_time = 600 ;每個PHP頁面接收資料所需的最大時間,預設60秒 。 memory_limit = 8M ;每個PHP頁面所吃掉的最大記憶體,預設8M。
二、修改phpmyadminimport.php文件。(注:這是設置phpmyadmin的,如果你的資料庫很大的情況可以通過這個辦法將資料庫備份下來,而不再是分卷備份)
用筆記本打開import.php文件:
1、查找$memory_limit,默認為$memory_limit = 2 * 1024 * 1024;自己修改。
2、下邊三四行的位置有同樣的語句,自己修改。
三、到這裏還不行,IIS的問題。
1)解決在 IIS 6.0 中,無法上傳大容量檔的辦法:
1、先在服務裏關閉 iis admin service 服務。
2、找到 windows\system32\inetsrv 下的 metabase.xml 文件。
3、用寫字板打開,找到 ASPMaxRequestEntityAllowed 把它修改為需要的值(默認為:204800,即:200K)。
4、存檔,然後重啟 iis admin service 服務,重啟IIS。
2)解決在 IIS 6.0 中,無法下載超過4M的附件步驟:
1、先在服務裏關閉 iis admin service 服務。
2、找到 windows\system32\inetsrv 下的 metabase.xml 文件。
3、用筆記本打開,找到 AspBufferingLimit 把它修改為需要的值(默認為:4194304,即:4MB)。
4、存檔,然後重啟 iis admin service 服務,重啟IIS。
OK,有以上三步,PHP的2M限制完全搞定!
其他網友補充:
在php.ini裏面可以設置最大上傳檔大小
解決方法:
第一:
在php.ini裏面尋找如下行:
upload_max_filesize = 8M post_max_size = 10M memory_limit = 20M