私のサイトのログは、誰かがウェブサイトにアクセスするとcronがトリガーされることを示しています。これにより、最初の訪問の読み込み時間が遅くなります。
Cronは、ここで3時間ごとに実行されるように構成されています:アドミニストレーション"構成"システム"Cron。
訪問者によってトリガーされずにスケジュールされたcronを実行するにはどうすればよいですか?
cronに関するDrupalハンドブックページ を読んで、バックグラウンドと実行するコマンドを取得する必要があります。
crontab -u www-data -e
を使用して実行し、Webユーザーのcronテーブルを編集できます。上記のリンクの詳細を使用して、適切なcron実行を何度でもセットアップできます。cron.php
ページを呼び出すことができます。たとえば Set Cron Job を参照してください。Elysia Cron module のように見てください。一般的にcronをもっと使いたい場合は、ドキュメントが充実しており、実行するタスクを細かく制御できます。
最後に、訪問者がAdministration"Configuration"System"Cronに到達したら、サイトの実行を無効にすることを忘れないでください。
Drupal 7は、モジュール内に Poormanscron にあったコードを組み込んでいます。その目的は、cronタスクを設定できないサイトでDrupal cronタスクを実行することです。 、ユーザーがサイトにアクセスしたとき、およびX時間ごと(表示されたページで設定されているとおり)。
この動作を回避したい場合は、「Run cron every」を「Never」に設定するだけです。見た目とは逆に、ユーザーがサイトにアクセスしたときに何が起こるかに影響します。[1] 引き続きDrupal cronタスクをDrupalの外部から実行できます。Drupal 7では、cron.phpをDrupalの外部から呼び出して、表示された値を渡す必要があります。 「アドミニストレーション>レポート>ステータスレポート」
[1]:実際、 cron.php も drupal_cron_run() も、 Drupal設定ページで使用される変数。使用されるDrupal変数は次のとおりです。
TRUE
に設定される「maintenance_mode」