2015年1月4日 星期日

PHP: 上傳大型檔案時發生 POST 參數消失事件


前輩的網頁後台的已經能自行加入貼文,不過,他需要加入圖片及影片。花了一點時間修改後台介面後,已能成功加入圖片。可是,同一段上載代碼用在 12MB 的影片時卻無法上傳,原因是部份 POST 參數不見了。明明是同一段代碼,圖片能上傳而影片卻不,相信是跟檔案大小或記憶體限制有關。而在接收檔案的 PHP 檔頭已加入相關設定:
ini_set("upload_max_filesize", "100M");
ini_set("post_max_size", "100M");
ini_set("memory_limit", "-1");
理應能解決問題。嘗試過後,發現同時需要在 php.ini 中修改設定:
; Maximum size of POST data that PHP will accept.
; http://www.php.net/manual/en/ini.core.php#ini.post-max-size
post_max_size = 512M

; Maximum allowed size for uploaded files.
; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
upload_max_filesize = 512M
加入設定後便能成功上傳。

沒有留言: