WordPressの管理画面でサイズの大きな画像ファイルや動画ファイルをアップロードしようとすると、
このサイトのアップロードサイズ上限を超えています。
とエラーが表示されてアップロードできないことがあります。画像で見ると以下のような状態です。
画像では「最大アップロードサイズ」が「8MB」になっています。
これでは小さすぎて大きな画像や動画ファイルをアップロードできないかもしれません。
このようにサーバーでデフォルトで設定されているアップロードサイズ上限はデフォルトでは小さく設定されていることが多く、より大きなサイズのファイルをアップロードするためには、自力でサーバーの設定を変更する必要があります。
最大アップロードサイズを増やす設定をすることで、大きなファイルをアップロードできるようになります。
それでは具体的な設定方法について解説します。
目次
サーバーの「php.ini」ファイルで設定する方法
WordPressを動作させているサーバーには「php.ini」というPHPの設定ファイルがあります。
この「php.ini」ファイルの設定を変更して、ファイルアップロードの上限サイズを増加できます。
実際に設定する際には、アップロードの上限サイズと共に、他のパラメーターも設定を変更する必要があります。
具体的には以下の5つの項目です。
設定項目 | 説明 |
---|---|
post_max_size | POSTデータの最大サイズ |
upload_max_filesize | アップロードするファイル1つ当たりの最大サイズ |
memory_limit | メモリ使用量の上限 |
max_input_time | PHPがPOST、GETを処理する最大時間(秒) |
max_execution_time | PHPスクリプトの最大実行時間(秒) |
直接的にアップロードサイズに関係のあるパラメータは「upload_max_filesize」ですが、基本的にはこれら5項目を同時に調整します。
なぜかと言うと、これらの設定項目には1つのルールがあるからです。
memory_limit >= post_max_size >= upload_max_filesize
上記のルールにしたがってパラメータの数値を設定する必要があります。特に「post_max_size」は「upload_max_filesize」よりも大きい数値を設定することが重要です。アップロードされたファイルはPOSTデータとして処理されるため、アップロードファイルの上限値より大きな数値でないと、アップロードされたファイルがPHPで処理できなくなるからです。
memory_limit = 700M
post_max_size = 600M
upload_max_filesize = 500M
max_input_time=60
max_execution_time=30
上のサンプルではファイルアップロードの上限サイズを500MBまで増やしました。数値に関しては利用状況に合わせて修正してください。
このサンプルの記述をそのままphp.iniファイルにコピーすれば、WordPressでアップロードできるファイルサイズの上限が500MBになります。
このようになっていれば成功です。
サーバーの「.htaccess」ファイルで設定する方法
使用しているサーバーによっては、「php.ini」ファイルの設定ができないサーバーもあります。
このような場合は、WordPressがインストールされているディレクトリにある「.htaccess」ファイルを変更することで、アップロードできるファイルサイズの上限が変更可能です。
php_value post_max_size 600M
php_value upload_max_filesize 500M
php_value memory_limit 700M
php_value max_input_time 60
php_value max_execution_time 30
「.htaccess」に上記のように記述をすれば、ファイルアップロードの上限サイズが500MBになります。(※さきほどのphp.iniと同じ数値を設定しています。利用環境に合わせてカスタマイズしてください)
エックスサーバーでは管理画面で設定可能
レンタルサーバーの「エックスサーバー」ではサーバーの管理画面で「php.ini」ファイルのカスタマイズが可能です。
サーバーパネルにログインして「php.ini設定」をクリックします。
php.iniの設定対象となるドメインを選択します。
「php.ini設定変更」
管理画面に用意されている各項目ごとにphp.iniの設定を記述していく方法です。
画面の下の方にスクロールすると、ファイルアップロード関係の設定が表示されますので、数値を入力します。
数値の変更ができたら、「確認画面へ進む」をクリックし設定を確認して、「変更する」ボタンをクリックします。
「php.ini直接編集」
サーバーに設定されている、「php.ini」ファイルを直接編集する方法です。
下の方にスクロールして、ファイルアップロード上限サイズの関する設定を入力します。
設定の入力ができたら、「確認画面へ進む」をクリックし設定を確認して、「変更する」ボタンをクリックします。
まとめ
今回紹介したファイルアップロードの上限に関するエラーは、WordPressに大きな画像や動画ファイルをアップロードする時に頻繁に見かけるエラーです。
しかしこの記事で紹介したカスタマイズを設定しておけば、今後大きなファイルをアップロードする時にエラーが表示されることなく、正常にアップロードできます。
設定の方法が複数あり、少し複雑ですが、WordPressで大きなファイルを扱いたい時には必須のカスタマイズです。