【WordPress】Duplicatorのビルドがホストビルド割り込みで止まってしまった場合の対処法

wordpress-prograshi(プロぐらし)-kv WordPress
記事内に広告が含まれていることがあります。

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

エラーの概要

ホストビルド割り込み
このサーバーは、ホストセットアップの制約によりビルドを完了できません。詳細については、エラーメッセージを参照してください。



ビルド停止の原因

ビルド停止の原因として「オプション4:サーバー構成」を確認すると、以下のように表示されます。


これはサーバー側で設定されている、PHP 最大実行時間が30 (default) が今回のエラーの主原因です。

Duplicatorがウェブサイトのデータ全体をパッケージ化する処理は時間がります。

このため、サーバー側で設けられている「PHP 最大実行時間」が実行時間制限をすぐに超えてしまい、タイムアウトが発生している状況です。

結果として、サーバーが504エラーを出しています。


504エラーとは?

「5xx」で始まるステータスコードは、サーバー側に問題があることを示します。

「504」は、ウェブサイトにアクセスした際、リクエストを処理する過程でサーバーが応答を待つ時間が長すぎたために発生するエラーです。


対処法

主な対処法は、以下の2つです。

見出し
  1. PHPの実行時間制限の延長: max_execution_time
  2. PHPのメモリ制限の引き上げ:memory_limit


これらはサーバーの「php.ini」または「.user.ini」を編集することで設定することができます。

MEMO

.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)をいくら引き上げても効果がありません。

タイトルとURLをコピーしました