Duplicator Proのサーバータイムアウト問題でお困りですか?このガイドでは、サーバーのタイムアウト関連の問題を効果的にトラブルシューティングし、解決するための実践的なソリューションを提供します。
まず始めに、Duplicator Proの最新バージョンを使用していることを確認してください。変更履歴と システム要件をご確認ください。
概要ホストビルド割り込み問題への対処
タイムアウトの問題は、PHP、ウェブサーバ、またはデータベースプロセスの実行時間に制限を課す共有ホスティングプラットフォームでよく発生します。これらのタイムアウトは、Duplicatorのログファイル(バックアップまたはインストーラのログ)を調べることで特定できます。正常に完了したログには "DONE PROCESSING "または "COMPLETE "と表示されますが、不完全なログは通常ホストがプロセスの実行時間に制限を課していることを示します。

これに対処するために、いくつかのホストはデフォルトの制限を超えて許可されたランタイムを拡張する機能を提供しています。Duplicatorと互換性のある承認されたホスティングプロバイダの包括的なリストについては、Duplicatorホスティングリソースページを参照してください。
デュプリケーターLITE
Duplicator Liteのビルドプロセスはシングルスレッドで動作し、サイトがアーカイブされるまで継続的に実行されます。Liteバージョンは最大4GBまでのバックアップを構築できますが、そのパフォーマンスはホスティング環境に大きく依存します。Duplicator Liteは通常、ほとんどの格安ホストの500MB以下のサイトで最高のパフォーマンスを発揮します。タイムアウトやビルドの問題が発生した場合は、次の手順をお勧めします:
- サーバーのアップグレード: 低予算のホストは、より大規模で複雑なサイトを処理する際に制限に直面する可能性があります。マネージドVPSまたは専用サーバーへのアップグレードは、多くの場合、効果的なソリューションです。これらのシステムは、より良いコントロールを提供し、ホスティング会社からの優れたサポートが付属しており、バックアップや移行タスクのパフォーマンスを向上させます。
- 設定を調整する:現在のホストとプラグイン自体のパフォーマンスを最適化するためのいくつかの戦略オプションがあります。これらの調整はタイムアウトの問題を軽減し、ビルドプロセス全体を改善するのに役立ちます。
デュプリケーターPRO
プロバージョンは、マルチスレッドアーキテクチャを使用して、より大きなデータセットをよりよく処理します。また、WordPressのフルバックアップ/移行戦略を強化するのに役立つ他の素晴らしい機能の 数十が付属しています。
戦略1:プラグイン内でタイムアウトの問題を解決する。
デュプリケーターライトのみ
デュプリケーターライト&プロ
- SQLモードを切り替える:別のデータベース構築プロセスを試してみてください。まず "Mysqldump "を試し、次に "PHP Code "を試してください。設定"バックアップタブ"SQLモードを参照してください。
- フィルタを有効にする:画像/動画/pdfなどの大きなファイルを含むyourwp-content/uploadsフォルダのような大きなデータソースに複数のディレクトリフィルタを作成するだけで、バックアップを構築し終えることができます。
- DupArchiveを有効にする: と呼ばれる新しいフォーマット。 重複アーカイブ は、大規模なサイトや制限されたホスト環境で発生する問題を克服するためにDuplicatorによって開発されました。DupArchiveを使用することで、バックアップのビルド時にタイムアウトが発生する可能性を大幅に減らすことができます。
- Duplicator LiteでDupArchiveを使用する場合、バックアップのサイズに500MBの制限があります。新しいフォーマットを使用するには
Duplicator Lite » Settings » Backups » Archive Engine = DupArchiveDuplicator Pro » Settings » Backups » Archive Engine = DupArchive


戦略2ウェブサーバー設定更新のタイムアウト問題を解決する。
以下のオプションはすべて、Duplicator LiteとProの両方でタイムアウトの問題を解決するのに役立ちます。設定はバックアップの作成とバックアップのインストールの両方に役立ちます。タイムアウトは3つの異なるレイヤーで制御できるため、それぞれのレイヤーにアクセスし、サーバー管理者と協力して検証する必要があります。
解決策1:PHPタイムアウト
PHP プロセッサは、一定時間 (通常は 30 秒) 経過するとスクリプトをタイムアウトさせ、接続を切断します。ホスティングプロバイダが許可していれば、この値を調整することができます。Duplicator は必要な権限があればこの値を変更しようとします。そうでない場合は、ホスティングプロバイダーと協力して問題を解決する必要があります。残念ながら、このレベルのコントロールは私たちの能力の範囲外です。
PHPタイムアウトの問題を解決する
- サーバー上でPHPがタイムアウトする可能性を解決する最も手っ取り早い方法は、 ホスティングプロバイダーに問い合わせ、PHPの実行時間をデフォルトの30秒より長くする 解決策を提供しているかどうかを確認することです。多くのホストはこの調整を許可しており、そのホストのドキュメントを参照する必要があります。
- ホストによっては、以下の行を
.htaccessファイルは、ウェブサイトのルート・フォルダー内、またはplugins/duplicatorフォルダー
php_value max_execution_time 0
値を 0 つまり、時間制限はない。
ホスティング・プロバイダーによって運用方法が異なるため、プロバイダーに直接問い合わせて、システム上でこの値を調整する方法を確認してください。プロバイダが解決策を提示しない場合、そのサーバではタイムアウトの問題を解決できない可能性があります。そのような場合は、VPSなど、より処理能力の高いサーバーにアップグレードする必要があるかもしれません。あるいは、フィルタを使用してバックアップ全体のサイズを小さくすることもできます。
解決策2:ウェブサーバーのタイムアウト
ウェブサーバーは、スクリプトにタイマーを課して、特定の時間経過後に接続を終了させることもできます。この値は、ホスティングプロバイダまたはサーバ管理者のみが変更できます。これが問題だと思われる場合は、ホスティングプロバイダに連絡して、そのようなタイムアウトが設定されているかどうかを確認してください。この制限を直接調整することはできませんので、この問題に関するリクエストを送信しないでください。
ウェブサーバーのタイムアウトを調整する:
一部のウェブサーバーでは、サーバー管理者のサポートを必要とせずに、ユーザーがタイムアウトを変更することができます。以下は、ApacheやLitespeedサーバーに有効な設定の例です。
例1 Apache の書き換えルール: 以下の通りである。 RewriteRule を使用すると、サーバーの接続タイムアウトを防ぐことができます。これを .htaccess ファイル。
# Example .htaccess file inserted by customer control panel
SetENV PHPRC /home/username/public_html
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^$ - [E=noabort:1]
...
</IfModule>
# END WordPress
例 2 - FastCGI セットアップ: FastCGI(fcgi)を使用している場合は、以下を .htaccess またはサーバー設定ファイル:
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
FcgidIOTimeout 900
ProcessLifeTime 7200
IPCConnectTimeout 180
IPCCommTimeout 7200
</IfModule>
例3 - ライトスピードのセットアップ:Litespeedを使用している場合は、以下のルールをあなたの .htaccess またはLitespeedコンフィギュレーション:
<IfModule litespeed>
RewriteRule .* - [E=noabort:1]
</IfModule>
あるいは
<IfModule Litespeed>
RewriteEngine On
RewriteRule .* - [E=noconntimeout:1]
SetEnv noabort 1
</IfModule>
解決策3データベースのタイムアウト
バックアップを作成しているときに、あるテーブルで突然バックアップログが停止し、次のようなエントリーがあることに気づいた:
…
02:55:06 done: wp_posts
02:55:06 start: wp_stats (1435897)
追加ロギングが行われない場合は、SQLの生成に失敗したことを意味します。これを解決するために試せることがいくつかあります:
データベースの回避策
- オプション1: データベースのクリーンアップと最適化
- WP-Sweepのようなプラグインをインストールして、未使用のデータを一掃する。必ず修復と最適化の設定を実行してください。または、phpMyAdminのようなツールを使ってデータベースの修復と最適化を実行することもできます。
- オプション2:用途
mysqldumpデータベースバックアップの高速化- ホスティングプロバイダがmysqldumpをサポートしている場合、このオプションを有効にすると、大規模なデータベースのバックアップ作成とインストーラの所要時間を全体的に短縮できます。設定]メニューから[データベース構築]オプションを選択し、[mysqldumpを使用する]にチェックを入れます。このオプションは構築フェーズでは有効ですが、インストーラフェーズでは有効ではありません。
- オプション3:統計データのための外部ツールの使用
- 失敗するテーブルのほとんどは、数百万レコードのロギングや統計データに関するものです。統計プラグインの代わりにGoogle Analyticsのような無料ツールを使用することを強くお勧めします。カスタムプラグインは、追加のリクエストでサイトを遅くする可能性があり、Google Analyticsのようなレポート機能を提供しません。
- オプション4: 大型テーブルを一時的に除外
- データベースにログ・テーブルのような大きなテーブルがある場合は、一時的にバックアップを取り、ビルド・プロセスから除外してください(バックアップを作成するステップ1でこれを行うことができます)。その後、必要に応じて手動でテーブルを再インポートできます。多くの場合、ログテーブルのデータは移行する必要はなく、安全に削除できます。
- オプション5 タイムアウトまたはスクリプト処理の増加
- ホスティングプロバイダーと協力して、Apache、PHP、MySQLのタイムアウトまたはスクリプト処理の制限を増やしてください。これらの設定をサポートしている承認済みのホストを使用することをお勧めします。
解決策4DuplicatorとCloudflareの問題
Cloudflareがアクティブな状態でDuplicatorにサーバタイムアウトが発生する場合、CloudflareのRailgun機能のタイムアウトが関係している可能性があります。この機能についてはこちらをご覧ください:Cloudflareエラー524。
この問題を解決するには、この機能を一時的に無効にしてからDuplicatorプロセスを実行してみてください。以下の手順に従ってください:
- Cloudflareアカウントにログインします。
- 概要」ページで「詳細」をクリックする。
- 一時停止」をクリックする。
- インストーラの配置を実行します。
- 完了したら、Cloudflareを再びオンにする。
これにより、Cloudflareが問題を引き起こしているかどうかを判断し、移行またはバックアッププロセスを進めることができます。
戦略3手作業による時間の回避
バックアップタイムアウト
ログにデータベース・スクリプトの処理が完了したことが記録されている場合、すべてのファイルをバックアップする際にタイムアウトが発生する可能性があります。以下は、ファイルのバックアップ中に問題が発生した場合に試せるいくつかの手順です:
- 大容量ファイルの除外:動画、大容量画像、その他のバックアップファイルなどの大容量ファイルを除外します、
.zipまたは.tarファイル)をファイルフィルターのセクションに追加する。 - wp-content/uploadsを除外する。:を追加する。
wp-content/uploadsフォルダをディレクトリフィルタオプションに追加します。新しい場所へのインストールが完了したら、それらのファイルを手動でコピー/FTPして戻すことができます。 - 2回に分けてインストールする

インストーラーのステップ1のタイムアウト
可能であれば、手動で移動できる大きなファイル/ディレクトリを除外して、より小さなバックアップを再構築してみてください(上記の「バックアップのタイムアウト」を参照)。
ステップ1のオプションで、"Manual Extraction "ステップを試してください。手動抽出の実行方法については、以下のステップを参照してください:

こちらもご覧ください: 手動抽出」またはZipを有効にせずにインストーラを実行するには?
インストーラステップ2のタイムアウト
データベースがサーバーの設定に対して大きすぎる場合は、「データベースのタイムアウト」の手順/オプションを参照してください。
- プロユーザーのみオプション"チャンキング"SQLファイルをチャンクするマルチスレッドリクエストを有効にします。
- Setup"Action"Manual SQL Execution (advanced) オプションを有効にします。これは、前もってデータベースを手動でインポートしておく必要があります。これは、ホストが行うこともできますし、phpMyAdmin のようなツールが大規模サイトをサポートしていれば、それを使うこともできます。