エックスサーバーでのCRON設定
エックスサーバーで、CRM分析プラグインの集計用CRONを設定する手順です。
サーバーパネルから2本のスケジュールを登録します。
前提条件
- エックスサーバーのサーバーパネルにログインできること
- EC-CUBEとCRM分析プラグインがインストール済みであること
- CRONで使うPHPのバージョンが決まっていること(サーバーパネルの「PHP Ver.切替」で設定しているWebのPHPと、同じバージョンを推奨します)
推奨スケジュール
CRM分析プラグインでは、レンタルサーバーでも安定して運用できる5分おきを推奨しています。
| 用途 | 推奨 | コマンド |
|---|---|---|
| 集計ワーカー | 5分おき | eccube:crm-analytics42:worker |
| 日次登録 | 毎日 3:00 | eccube:crm-analytics42:enqueue-daily |
管理画面から集計を開始するとキューに登録され、次回のワーカー実行で処理が始まります。5分おきなら、開始までの待ちは最大で約5分です。
設定手順
- サーバーパネルの「サーバー」>「Cron設定」を開く
- 集計ワーカー用(5分おき)のCronを追加する
- 日次登録用(毎日 3:00)のCronを追加する
手順1: 「Cron設定」を開く
サーバーパネルにログインし、「サーバー」>「Cron設定」を開きます。

手順2: 集計ワーカー用のCronを追加する
「Cron設定を追加」をクリックし、「時刻」と「コマンド」を入力して、「追加する」をクリックします。
エックスサーバーのサーバーパネルでは、時刻(分・時間・日・月・曜日)とコマンドを分けて入力します。ダッシュボードの初期セットアップに表示される1行は、先頭の時刻指定(*/5 * * * * など)を除いた部分を貼り付けます。コマンドの表示方法は、初期セットアップ を参照してください。コマンドの末尾には > /dev/null 2>&1 を付け足します(理由は後述の「実行結果のメールについて」)。
コマンドの /opt/php-8.3/bin/php は、ダッシュボードで選んだ、CRONで使うPHPのバージョンのコマンドパスです(/opt/php-バージョン/bin/php の形式。選べるのは 7.4 / 8.0 / 8.1 / 8.2 / 8.3)。Webで使うPHP(「PHP Ver.切替」)と、CRONで使うPHPは別々に決まるため、CRONでは、コマンドパスの数字でバージョンを指定します。
コマンド(1行):
cd /home/サーバーID/ドメイン名/public_html/ec-cube && /opt/php-8.3/bin/php bin/console --no-debug eccube:crm-analytics42:worker > /dev/null 2>&1
時刻:
| 分 | 時間 | 日 | 月 | 曜日 |
|---|---|---|---|---|
*/5 | * | * | * | * |

手順3: 日次登録用のCronを追加する
手順2と同様に、もう1件追加します。
コマンド(1行):
cd /home/サーバーID/ドメイン名/public_html/ec-cube && /opt/php-8.3/bin/php bin/console --no-debug eccube:crm-analytics42:enqueue-daily > /dev/null 2>&1
時刻:
| 分 | 時間 | 日 | 月 | 曜日 |
|---|---|---|---|---|
0 | 3 | * | * | * |

実行結果のメールについて
コマンドの末尾の > /dev/null 2>&1 は、実行結果を捨てる指定です。5分おきに動くため、付けないと実行のたびに結果が通知されます。
- 「Cron結果の通知アドレス」を設定している場合は、実行のたびに通知メールが届きます
- 通知アドレスを設定していない場合は、ホームディレクトリ直下の「Maildir」フォルダに結果が保存され続けます
設定後の確認
- ダッシュボードの初期セットアップで、ワーカー側に「動作を確認しました」と出るか見る(登録から最大5分ほどかかります)
- 初期セットアップの「上記2つの登録が完了したらチェックしてください。」にチェックを入れる
- 初期セットアップのステップ2「初回集計を開始しましょう」で「集計を開始」をクリックし、「定期実行の開始待ち」から実行中へ進むことを確認する(集計の期間は自動で選ばれます。集計するデータがない場合は、ステップ2は表示されず、セットアップが完了します)
うまくいかないとき
- PHPのバージョンがEC-CUBEの対応範囲(7.4〜8.3)外だと、分かりにくいエラーになることがあります。コマンドパスのバージョンを確認してください
- ダッシュボードに「CRON(定期実行)が動いていない可能性があります」と表示された場合や、解決しない場合は、初期セットアップ の「うまく動かないときは」を参照してください
- 原因を調べるときは、コマンド末尾の
> /dev/null 2>&1をいったん外し、「Cron結果の通知アドレス」にメールアドレスを設定して、実行結果を確認してください。確認が終わったら、元に戻してください - 詳細は 集計されない も参照してください