WordPress

【WordPress】PHPのファイルアップロードの上限を増やす方法

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で処理できなくなるからです。

php.iniの設定サンプル

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」ファイルを変更することで、アップロードできるファイルサイズの上限が変更可能です。

.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で大きなファイルを扱いたい時には必須のカスタマイズです。

===

このブログの更新情報をTwitterで配信しています。よろしければフォローお願いします!
@jugedred

facebookページも運営中です。
よろしければこちらもフォローお願いします!
Jugedred Project

ABOUT ME
ドレッド
フリーライター&Webクリエイター。1999年から趣味のホームページ制作を開始。Movable TypeやWordPressのカスタマイズでWeb制作を覚えました。地元の制作会社で5年間勤務して独立。現在は個人事業主としてWeb制作に関することを何でもやってます。
お仕事のご依頼お待ちしております。

このブログの運営者にお仕事を依頼しませんか?

コレカラウェブ

現在はフリーランスのクリエイターとして、ウェブメディアのライティングやホームページ制作、コンサルティングをしています。まずは事業用サイト「コレカラウェブ」にアクセスしていただき、お気軽にお問い合わせください。メールでのご相談は無料です。皆様からのご連絡お待ちしております。

コレカラウェブ公式サイトへ

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA