post_max_size 는 upload_max_filesize 보다 20% 크게 지정해야 한다.
통신 비트는 일반적으로 8bit 후 2bit의 별도의 패리티비트(오류정정)가 포함된다
upload_max_filesize / post_max_size
. 10M 12M
. 20M 24M
. 40M 48M
. 60M 72M
. 80M 96M
. 100M 120M
post_max_size 사이즈가 만약 100M 를 넘어 간다면 memory_limit(기본값 128M)를 최소 40M 가량 더해 적용한다.
이외에도 업로드 되는 파일의 사이즈가 매우 크다면 네트워크 속도를 고려하여 max_execution_time, max_input_time 을 늘려 PHP 실행시간 제한을 늘려야 한다.
memory_limit, max_execution_time, 는 PHP_INI_ALL 이기 때문에 php함수인 ini_set() 혹은 .htaccess 에서 php_value 로 설정이 가능하다.
post_max_size, upload_max_filesize, max_input_time 의 경우 PHP_INI_PERDIR, PHP_INI_SYSTEM 의 가변성을 가지기 때문에 php함수인 ini_set() 혹은 .htaccess 에서 php_value 로 선언할 수 없다.
각 php.ini 설정값의 가변성 여부는 http://php.net/manual/kr/ini.list.php 에서 확인할 수 있다.