こちらのサイトではDRUPAL10に関連する記事を掲載しています。
PHPのデフォルトでアップロードできるファイルのサイズは8MBです。
それより大きなファイルをアップロードしたい場合は、設定を変更する必要があります。
毎回phpをインストールするたびに変更が必要になるのでメモとして残しておきます。
ファイルアップロードに関する php.ini ディレクティブ
ディレクティブ | 説明 |
---|---|
post_max_size | POST データの最大サイズ |
upload_max_filesize | アップロードできるファイルの最大サイズ |
memory_limit | スクリプトが利用可能できるメモリの最大容量 |
max_input_time | スクリプトが POST、GET などの入力をパースする最大時間(秒) |
max_execution_time | スクリプトの最大実行時間(秒) |
設定手順
設定はphp.iniファイルを修正することで行います。
コードで変更することや.htaccessに記述することも可能です。
200MB のファイルアップロードを許可した時の設定です。
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; https://php.net/post-max-size
post_max_size = 200M
; Maximum allowed size for uploaded files.
; https://php.net/upload-max-filesize
upload_max_filesize = 200M
; Maximum amount of memory a script may consume
; https://php.net/memory-limit
memory_limit = 256M
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; Note: This directive is hardcoded to -1 for the CLI SAPI
; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
; https://php.net/max-input-time
max_input_time = 300
; Maximum execution time of each script, in seconds
; https://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 300
注意点
memory_limit > post_max_size
- post_max_size より、memory_limit の方に大きな値を設定しなければなりません。
この記事またはDrupalに関するご質問がございましたら、お気軽にお問い合わせください。