-
9月062009
PHPでアップロードファイルの最大サイズを変更する
No CommentsPHPでファイルアップロードをする際、
ファイルが大きすぎてエラーが出るときがあります。
これは /etc/php.ini でアップできるファイルの最大値をあらかじめ決めているからです。
今回設定したPHPのデフォルトは2Mだったので4Mまでアップロードできるようにしてみました。
ちなみに、/etc/php.ini では
ファイルのアップロードに関係するパラメータは3つあります。
1)memory_limit :スクリプトが確保できる最大メモリをバイト数
2)post_max_size :POSTデータに許可される最大サイズ
3)upload_max_filesize :アップロードされるファイルの最大サイズ
です。これらの値は、
memory_limit > post_max_size > upload_max_filesize
という感じで優先順位が決まってるそうなので
upload_max_filesizeをpost_max_sizeよりも大きくしても
post_max_size以上のファイルはアップできないことになります。
post_max_sizeはPOSTデータなので
ファイルを一緒にアップロードするデータの大きさにもよりますが。
今回は下記のように設定してみました。; Maximum amount of memory a script may consume (8MB) memory_limit = 8M ; Maximum size of POST data that PHP will accept. post_max_size = 8M ; Maximum allowed size for uploaded files. upload_max_filesize = 4M
なお、 /etc/php.ini を変更したら httpd の再起動をしないと
設定が反映されません。
参考:
PHP:コア php.ini ディレクティブに関する説明





