WordPressサイトのバックアップを作ってインポートしようとしたら、「最大アップロードサイズを超えています」というエラーが出て止まってしまった——そんな経験はありませんか。
このエラーはAll-in-One WP Migration 自体の不具合ではなく、PHP やサーバー側のファイルサイズ上限が原因である場合がほとんどです。設定ファイルを少し書き換えるだけで解決できますが、「どのファイルのどこに何を書けばいいのかわからない」という声をよく耳にします。
この記事では上限が発生する仕組みから、具体的な解除手順まで順を追って解説します。設定ファイルを触るのが不安な方でも、コピペできるコードを用意していますので安心してください。
- インポートが失敗する根本原因(PHPの設定値)
- 上限を解除する3通りの方法(wp-config.php / .htaccess / php.ini)
- 設定が正しく反映されたかどうかの確認手順
インポートが失敗する原因はPHPの設定値にある
無料版で設定されているデフォルトの上限とは
All-in-One WP Migration の無料版には「512MB」という上限が表示されることがありますが、この数字はプラグイン側が設けた制限ではありません。
実際のボトルネックになっているのは、PHPまたはサーバー側のアップロードサイズ制限です。レンタルサーバーの初期設定では、この値が 64MB や 128MB など低めに設定されているケースが多く、バックアップファイルがそれを超えると弾かれてしまいます。
関係する3つのPHP設定値
上限を解除するには、以下の3つの設定値を一緒に変更する必要があります。どれか一つだけ変えてもエラーが解消されない場合があるため、セットで変更するのがポイントです。
upload_max_filesize:1ファイルあたりのアップロード上限post_max_size:POSTリクエスト全体のサイズ上限(upload_max_filesize以上の値にする)memory_limit:PHPが使用できるメモリの上限(小さすぎると処理途中でクラッシュする)
上限を解除する前に確認すること
利用中のサーバー環境を確認する
使っているサーバーの種類によって、どの方法が使えるかが変わります。
共用レンタルサーバーの場合(エックスサーバー・ConoHa WING・さくらインターネット など)は、管理画面にPHP設定メニューが用意されていることがあります。まずは管理画面を確認し、PHPの設定変更できる項目があればそちらから試してみてください。管理画面から変更できない場合は、この記事で紹介する .htaccess や wp-config.php の方法で対応できます。
VPS・専用サーバーの場合は php.ini を直接編集する方法(方法③)が確実です。
他のサーバーでも基本的な手順は同じです。サーバーの種類が不明な場合は、契約しているホスティングサービスのサポートページで「PHP設定の変更方法」を検索してみてください。
作業前にバックアップを取る
設定ファイルを編集する前に、以下のバックアップを取っておくと安心です。
- 変更対象のファイル(
wp-config.php/.htaccess/php.ini)をローカルにダウンロードしてコピーを保存する - FTPクライアント(FileZilla など)でダウンロードするか、サーバーのファイルマネージャーからダウンロードする
万が一設定を間違えてもバックアップがあれば元に戻せます。
インポート上限を解除する方法(3通り)
方法① wp-config.php に追記する
※この方法は memory_limit の変更には有効ですが、upload_max_filesize と post_max_size には効かないケースが多いです。確実に解除したい場合は方法②または③をお試しください。
wp-config.php はWordPressの動作設定が書かれたファイルで、WordPressのルートディレクトリ(public_html や www 直下)に置かれています。このファイルにPHP設定を上書きする記述を追加する方法です。
追記する場所:ファイルを開いて <?php の直後の行に追加します。
<?php
// ▼ ここから追記(「<?php」の直後に追加する)
@ini_set('upload_max_filesize', '512M');
@ini_set('post_max_size', '512M');
@ini_set('memory_limit', '256M');
// ▲ 追記ここまで@ini_set() はPHPの設定値をスクリプト内で上書きする関数です。ただし upload_max_filesize と post_max_size はPHPの仕様上 ini_set() では変更できない設定値のため、この方法では効果がない場合がほとんどです(memory_limit は変更可能)。
wp-config.php への追記でうまくいかない場合は、方法② か方法③ を使ってください。確実に設定を変更したい場合は、最初から方法② または方法③ を試すことをおすすめします。
方法② .htaccess に追記する
.htaccess はApache(Webサーバーの一種)に対してさまざまな指示を出せる設定ファイルです。WordPressのルートディレクトリに置かれています。
注意:Nginx環境では .htaccess は動作しません。 VPSなどでNginxを使っている場合はこの方法をスキップし、方法③ を試してください。
注意:PHP-FPM 構成のサーバーでは .htaccess の php_value は使えません。 エックスサーバー・ConoHa WING・さくらインターネット(スタンダードプラン以上)などは PHP-FPM 構成を採用しているケースが多く、この場合 php_value を .htaccess に書くと 500エラー が発生します。.htaccess を保存した後にサイトが表示されなくなった場合は、追記した php_value の行を削除してください。その場合は方法③(php.ini)を試してみてください。
既存の記述の末尾か先頭に以下を追記します(既存の RewriteEngine On 等の記述は消さないでください)。
php_value upload_max_filesize 512M
php_value post_max_size 512M
php_value memory_limit 256M保存後、ページをリロードして動作確認してください。
方法③ php.ini を編集する
php.ini はPHPの設定ファイルです。ファイルの場所はサーバーによって異なりますが、共用サーバーではWordPressのルートディレクトリに php.ini を新規作成して置くだけで読み込まれるケースがあります(サーバーによる)。
VPSや専用サーバーの場合はサーバー管理者の手順に従ってください。
upload_max_filesize = 512M
post_max_size = 512M
memory_limit = 256M変更後はPHPを再起動(または設定を反映)する必要があります。VPSの場合は sudo systemctl restart php-fpm 等で再起動してください。
設定が反映されているか確認する方法
設定ファイルを書き換えただけでは、本当に反映されたかどうかはわかりません。phpinfo() という関数を使って確認します。
手順
- WordPressのルートディレクトリに
phpinfo.phpという名前のファイルを新規作成する - 以下のコードを書いて保存する
<?php phpinfo(); ?>- ブラウザで
https://あなたのドメイン/phpinfo.phpにアクセスする - ページ内で
Ctrl + F(Mac はCommand + F)を使い「upload_max_filesize」を検索する - 設定した値(512M など)になっていれば反映されています
必ず確認後にファイルを削除してください。 phpinfo.php をサーバーに残しておくとサーバーの詳細情報が外部に公開されてしまいます。確認が終わったらすぐ削除してください。
それでも解決しないときのチェックリスト
上記の手順を試してもインポートできない場合は、以下を確認してみてください。
- 設定ファイルの置き場所が間違っていないか
wp-config.phpも.htaccessもWordPressのルートディレクトリ(index.phpがある場所)に置く必要があります post_max_sizeがupload_max_filesizeより小さくなっていないかpost_max_sizeが小さいと、upload_max_filesizeを大きくしても上限に引っかかります。必ずセットで変更してください- Nginx環境または PHP-FPM 環境で
.htaccessのphp_valueを使っていないか Nginx では.htaccessは動作しません。また Apache + PHP-FPM 構成でもphp_valueは使えず 500 エラーになります。これらの環境ではphp.iniか管理画面から設定してください - キャッシュが残っていないか 設定変更後はキャッシュ系プラグインのキャッシュをクリアし、ブラウザも強制リロード(
Ctrl + Shift + R)してから再試行してみてください - phpinfo.php で設定値を確認したか 設定ファイルは保存しても反映されていないケースがあります。必ず
phpinfo()で数値を確認してください
上記をすべて試しても解決しない場合、All-in-One WP Migration の有料拡張(Service Provider Bundle など)を導入するという選択肢もあります。 有料版ではサイズ制限が大幅に緩和され、移行作業がスムーズになるケースがあります。費用対効果と移行の重要度を踏まえたうえで、一つの選択肢として検討してみてください。
よくある質問(FAQ)
- All-in-One WP Migration の無料版には512MBの上限があると聞きましたが、それとは別の話ですか?
はい、別の話です。プラグイン側に表示される「512MB」はあくまでプラグインが読み取ったPHPの設定値です。実際にインポートが失敗する場合は、サーバーやPHPの
upload_max_filesizeなどの値が低く設定されているケースがほとんどです。この記事の手順でPHP側の上限を引き上げることで解決できます。
- wp-config.php と .htaccess はどちらを使えばよいですか?
どちらでも構いませんが、共用レンタルサーバーを使っている場合はまず
wp-config.phpへの追記を試してみてください。環境によっては.htaccessの方が確実に効く場合もあるため、片方で反映されなければもう一方を試してみてください。
- 設定を変更したら他のページに影響しますか?
アップロード上限を引き上げること自体はWordPressの表示や動作に直接の影響はありません。ただし
memory_limitを過度に大きく設定するとサーバーのメモリを圧迫する可能性があります。まずは 256M〜512M 程度を目安に設定し、問題がなければそのままにしておきましょう。
まとめ
この記事では以下を解説しました。
設定ファイルを触るのは最初は少し不安かもしれませんが、手順通りに進めれば問題なく対応できるかと思います。この記事がWordPressサイトの移行作業の参考になれば幸いです。
