【PHP】アップロードされるファイルサイズの上限を設定する
PHPでアップロードされるファイルサイズの上限を設定したい!
概要
今回の記事では、PHPでアップロードされるファイルサイズの上限を設定する手順を掲載する。
仕様書
環境
- Ubuntu 20.04.4 LTS
- PHP 8.0.23
- apache 2.4.41-4ubuntu3.14
手順書
PHPの設定ファイルphp.ini
に設定を入力することでアップロードされるファイルサイズの上限などを設定できる。
WEBサーバーとしてApacheがインストールされてる環境の場合、PHPの設定ファイルは下記にある。
/etc/php/8.0/apache2/php.ini
関連する設定項目を挙げる。
upload_max_filesize
でアップロードされるファイルサイズの上限を設定する。単位なしだとバイトになる。2m
、2g
などの単位付きでも設定可。デフォルトでは2m
となってる。
post_max_size
でPOSTリクエストのボディに含まれる全体のデータサイズを設定する。ヘッダーなどのファイル以外の情報も含まれたサイズになるのでupload_max_filesize
で設定した値よりも大きく値にする。デフォルトでは8m
となってる。
以降はファイルサイズには直接関係ない設定項目なんだけども、アップロード関係つながりということで挙げておく。
file_uploads
でそもそもファイルアップロードを許可するか設定する。on
で許可、off
で拒否。デフォルトではon
。
max_file_uploads
で同時にアップロードできるファイルの総数を設定する。upload_max_filesize
は単一のファイルのサイズの上限なんだけども、post_max_size
は同時にアップロードされるファイルの総数+ヘッダーなどの情報もサイズに含まれるので注意。デフォルトでは20
。
まとめ(感想文)
PHPを使ってるWordPressとかに直接影響してくる設定。