8

cronの最大実行時間は?もしそうなら、それを変更することは可能ですか?

4

4 に答える 4

10

上記の受け入れられた答えは正しくありません。DrupalでのCronの制限時間は240秒にハードコードされています。のdrupal_cron_run関数includes/common.inc、具体的には次の行を参照してください。

drupal_set_time_limit(240);

if (!lock_acquire('cron', 240.0)) {

(Drupal 7.12のソースに基づく)

したがって、コアをハッキングせずにこれをグローバルに変更する方法はありません。PHPのカウンターがリセットされるため、実装drupal_set_time_limit内で自分自身を呼び出すことが提案されていると聞きました。hook_cronただし、を実装しているサードパーティのモジュールの場合は役に立ちませんhook_cron

于 2012-02-09T23:19:10.370 に答える
3

Drupal の cron の最大実行時間は、php.ini.

たとえば、cron コマンドとして使用する場合、apache の php.ini を使用して最大実行時間を決定します。wget -O - -q -t 1 http://www.example.com/cron.php

cron コマンドとして使用する場合php -f cron.php、php-cli の php.ini を使用して最大実行時間を決定します。

より長い実行時間のために php-cli を使用することをお勧めします。これにより、(debian Linux を使用している場合) から最大実行時間を設定でき、/etc/php5/cli/php.inicron の実行中に apache に副作用がありません。

于 2010-11-13T15:42:36.203 に答える
2

cron.phpブラウザを介して実行したところmax excution time error、php.ini の最大実行時間が 1200 秒であるのに対し、240 秒を取得しているため、これが必ずしも当てはまるかどうかはわかりません。したがって、私の php.ini ファイル以外のどこかで Drupal が最大実行時間を取得しています。

そのどこかは./includes/common.incorにあり./includes/locale.incます。そこに向かうと、あきらめる前にdrupalがcronの実行を許可する時間を調整する設定があります

于 2011-07-12T06:06:11.777 に答える
0

このモジュールはあなたを助けることができます: Cron 時間の設定

于 2013-08-21T14:49:40.453 に答える