Duplicatorでサイト移管をする際に、ビルド実行中に以下のようなエラーが発生して、ビルドが強制終了してしまうことがあります。

ホストビルド割り込み
このサーバーは、ホストセットアップの制約によりビルドを完了できません。詳細については、エラーメッセージを参照してください。
ビルド停止の原因
ビルド停止の原因として「オプション4:サーバー構成」を確認すると、以下のように表示されます。


これはサーバー側で設定されている、PHP 最大実行時間が30 (default) が今回のエラーの主原因です。
Duplicatorがウェブサイトのデータ全体をパッケージ化する処理は時間がります。
このため、サーバー側で設けられている「PHP 最大実行時間」が実行時間制限をすぐに超えてしまい、タイムアウトが発生している状況です。
結果として、サーバーが504エラーを出しています。

「5xx」で始まるステータスコードは、サーバー側に問題があることを示します。
「504」は、ウェブサイトにアクセスした際、リクエストを処理する過程でサーバーが応答を待つ時間が長すぎたために発生するエラーです。
対処法
主な対処法は、以下の2つです。
- PHPの実行時間制限の延長: max_execution_time
- PHPのメモリ制限の引き上げ:memory_limit
これらはサーバーの「php.ini」または「.user.ini」を編集することで設定することができます。
.htaccessでも設定することができますが、500エラーが発生する場合もあります。※サーバーの設定に依存します
(.htaccess で php_value や php_flag を使用しようとすると、Apacheサーバー側でこれらのディレクティブを認識できず、構文エラーとして処理されてしまうため)
.user.iniがある場合は「.user.ini」に、ない場合は「php.ini」に以下の内容を追記します。
max_execution_time = 300
memory_limit = 512M.user.iniファイルは「httpdocs」などの中にあります。

それでもエラーが発生する場合
PHPの実行時間を300秒に延長したにもかかわらず504でタイムアウトする場合があります。
これは、対象のPHPプロセスを監視している Webサーバー(Apache, Nginxなど) や、さらにその手前にある ロードバランサー、プロキシサーバー の待ち時間の設定が、300秒よりも短く設定されている可能性が高いです。
その場合は、スティング会社のサポートに連絡 することを強く推奨します。
大本が変更されない限り、ユーザー側で設定できるPHPの設定(max_execution_time や memory_limit)をいくら引き上げても効果がありません。


