「Maximum execution time of 30 seconds exceeded」は、PHP処理が設定時間内に終わらず停止したエラーです。時間だけを無制限に延ばすと、重い処理や無限ループを隠すことがあります。どの操作が何秒で止まったかを記録し、処理を分割・軽量化してから必要最小限の上限変更を行います。

最初に結論:処理を特定・分割し、必要な場合だけ実行時間を延ばす

  1. エラー全文、ファイルパス、行番号、発生操作を保存する
  2. 同じ操作を小さい件数・小さい画像で試す
  3. プラグインやインポート機能の分割設定を使う
  4. PHPバージョン、メモリ、外部通信の待ち時間を確認する
  5. 正常な長時間処理に限り max_execution_time を段階的に変更する

30秒からいきなり0(無制限)へせず、60秒、120秒のように段階的に試します。同じ行で毎回止まるなら、時間不足ではなく不具合や外部通信待ちを疑います。

実行時間超過が示すもの

PHPは一つのリクエストが長時間サーバーを占有しないよう上限を設けています。大量インポート、画像生成、バックアップ、外部API待ち、重いデータベース処理、プラグインのループで上限に達します。エラーファイルと行番号が最重要の手掛かりです。

確認結果 疑う場所 次の行動
少量なら成功、大量で失敗 処理量と実行時間 件数を分割する
同じファイル・行で停止 プラグイン不具合・外部通信 製品ログと公式情報を確認
画像だけで停止 巨大画像・メモリ・画像ライブラリ 寸法を縮小して比較
管理画面全体が遅い DB・cron・外部API Query Monitorやログで処理を特定

手順1:エラーログから停止した処理を特定する

PHPエラーログの時刻、ファイルパス、行番号を控えます。 wp-content/plugins/製品名/... なら該当プラグイン、テーマパスならテーマ処理が候補です。

管理画面の操作時刻と一致する記録だけを見ます。古いエラーを現在の原因と決めつけず、同じ操作を一度だけ再現して新しいログを確認します。

手順2:処理量を減らして完了できるか試す

CSVは100件ずつ、画像は数枚ずつ、バックアップはデータベースとファイルを分けるなど、機能が許す範囲で小分けにします。外部API取得はタイムアウト設定や再試行回数を確認します。

小分けで安定するなら、上限不足または一件あたり処理が重い状態です。特定データだけで止まるなら、その行の文字コード、URL、画像形式を調べます。

手順3:PHP設定を段階的に変更する

エックスサーバーのphp.ini設定で対象ドメインを選び、 max_execution_time を60秒など必要範囲へ変更します。プラグイン側に実行時間設定がある場合は、サーバー上限との関係を公式仕様で確認します。

変更後は同じ件数・同じ入力で時間を測ります。時間を増やすたび停止地点も後ろへずれるだけなら、根本的な処理効率を改善します。

延長してはいけないケースと戻し方

CPU使用率が上がり続ける、同じログが大量発生する、外部サイトから応答がない、無限ループが疑われる場合は延長を中止します。対象プラグインを停止し、更新版またはサポートの修正を待ちます。

試験後は変更前の値へ戻すか、運用上必要な根拠を記録します。無制限の0を常用せず、同時アクセスへの影響も確認してください。

ミカ
ミカ

エラーのファイル名と行番号まで見ると、時間不足か不具合か分かりやすいですね。
まず少量で成功するかを試してみます。

佐藤さん
佐藤さん

はい。少量でも同じ場所で止まるなら、上限を延ばす前に製品側を確認します。
設定変更は同じ入力で比較して効果を判断してください。

ミカ
ミカ

処理が終わっただけでなく、件数や画像が全部入ったかも数えます。
ログに新しい超過がなければ、安心して完了にできますね!

症状ごとの判断をもう一段深くする

少量なら成功、大量で失敗

この状態では、まず 処理量と実行時間 を優先します。件数を分割するだけで結論を出さず、変更前の画面・発生時刻・対象URLを残し、同じ条件で一項目ずつ比較してください。別の症状まで同時に出る場合は、個別ページより共通するサーバー設定やWordPress全体の処理を先に確認します。

同じファイル・行で停止

この状態では、まず プラグイン不具合・外部通信 を優先します。製品ログと公式情報を確認だけで結論を出さず、変更前の画面・発生時刻・対象URLを残し、同じ条件で一項目ずつ比較してください。別の症状まで同時に出る場合は、個別ページより共通するサーバー設定やWordPress全体の処理を先に確認します。

画像だけで停止

この状態では、まず 巨大画像・メモリ・画像ライブラリ を優先します。寸法を縮小して比較だけで結論を出さず、変更前の画面・発生時刻・対象URLを残し、同じ条件で一項目ずつ比較してください。別の症状まで同時に出る場合は、個別ページより共通するサーバー設定やWordPress全体の処理を先に確認します。

管理画面全体が遅い

この状態では、まず DB・cron・外部API を優先します。Query Monitorやログで処理を特定だけで結論を出さず、変更前の画面・発生時刻・対象URLを残し、同じ条件で一項目ずつ比較してください。別の症状まで同時に出る場合は、個別ページより共通するサーバー設定やWordPress全体の処理を先に確認します。

管理画面へ入れる場合・入れない場合の進め方

管理画面へ入れる場合

サイトヘルス、対象機能の設定画面、更新履歴を先に確認し、直前の変更を一件だけ戻します。変更後は未ログイン画面を開き、キャッシュされた管理者表示だけで判断しません。

管理画面へ入れない場合

サーバーパネルのファイル管理とエラーログを使い、対象ドメインとWordPress設置先を照合します。フォルダ名変更などの一時停止は対象一件に限定し、元の名前と変更時刻を記録します。復旧後は管理画面から正式な更新・設定を行い、一時変更を放置しません。

サポートへ相談するときに伝える内容

「直りません」だけでなく、記事タイトルの症状が出たURL、発生時刻、エラー全文、直前の操作、再現手順、試した項目と結果、PHP・WordPress・対象製品のバージョンをまとめます。ログに個人情報、Cookie、APIキー、パスワードがあれば伏せてください。

サーバー会社にはHTTP状態・PHPログ・DNSやWAFなど基盤側の確認を、プラグイン提供元には製品名・バージョン・再現操作を伝えます。問い合わせ先を分けると、同じ確認を何度も繰り返さずに済みます。

直ったと判断する条件

対象処理が想定件数まで完了し、生成物や取り込み件数が一致し、PHPログへ新しい実行時間超過が出ず、公開ページと管理画面の応答が悪化していない状態です。

  • 停止ファイルと行番号を記録した
  • 少量実行で比較した
  • 必要最小限の時間へ設定した
  • 処理結果の件数を照合した
  • 他ページの応答速度を確認した

復旧作業を落ち着いて進められるサーバー環境

PHP設定、エラーログ、処理状況を管理画面から確認できると、時間を闇雲に延ばさず原因を判断しやすくなります。

エックスサーバーのレンタルサーバー案内

エックスサーバー

4.6

サーバーパネルからファイル管理、バックアップ、PHP設定を確認しながらWordPressを運用したい初心者向けです。

向いている人: 障害時に自分で確認できる管理画面と国内サポートを重視する人 注意点: サーバー変更だけで全トラブルが解決するわけではありません。現在の原因を切り分けてから検討してください。 料金: スタンダード月額693円〜の目安。契約期間やキャンペーンで変わるため、公式ページで最新条件を確認してください。
エックスサーバーの管理機能と料金を見る

広告・PRを含みます。料金・特典は公式ページで最新条件をご確認ください。

よくある質問

max_execution_timeを0にすれば無制限ですか?

環境によって0は無制限を意味しますが、重い処理がサーバーを占有する危険があります。常用は避けます。

wp-config.phpへ書けば変更できますか?

サーバー方式や処理によって反映されません。公式のphp.ini設定画面とサイトヘルスの実値を優先してください。

バックアップで出た場合は?

対象を分割し、保存先容量と圧縮処理を確認します。製品の推奨設定とログに従ってください。

まとめ:時間を延ばす前に停止処理を特定する

ログのファイルと行、発生操作を照合し、少量実行で処理量依存かを確認します。正常な長時間処理だけ上限を段階的に延ばし、結果件数と他ページへの影響まで見て完了です。

PHP設定とエラーログを一か所で確認しやすい環境を求める場合は、現在の処理原因を把握してから管理機能を比較できます。

エックスサーバーの公式情報を確認する