0

Magento の cronjob を 2 時間ごとに実行するように設定しました。これは、ホストが設定できる最速です。ただし、実際にホストのコントロール パネルに移動して、特定の cronjob の [実行] ボタンをクリックするまで、ニュースレターは送信されません。

私は何を間違えましたか?私のcronパスは次のように設定されています:/bin/sh /usr/www/users/FTP_USER/cron.sh

4

3 に答える 3

1

これは、イベントオブザーバーがコンテキスト(adminhtml、フロントエンド、または場合によってはcrontab)に基づいてロードされるためです。ニュースレター送信オブザーバーはcrontabリストにないため、電子メールを送信できません。

この記事を参照してください:http ://www.aschroder.com/2010/01/magento-events-explained-and-a-few-gotchas-avoided/

于 2012-10-15T13:43:50.447 に答える
0

私の経験では、cron.sh スクリプトはうまくいきませんでした。したがって、 cron.php を実行するだけです。これには、十分な RAM と適切なタイムアウトで適切にセットアップされている php cli が必要です。

あなたのcrontabで試してください:

 * * * * * /usr/bin/php /home/USER/public_html/cron.php >> /home/USER/public_html/var/log/cron.log 2>&1

また、cron ジョブ中に発生したエラーを確認できるように、var/log/cron.php にログ ファイルを保存しています。

于 2012-10-01T14:19:13.253 に答える
0

これは、何らかの形式のアクセス許可/PATH の問題である可能性が高いと思います。コントロール パネルで何かをクリックしてイベントを手動でトリガーすると、おそらく Apache ユーザー (プラットフォームによっては www-data または同等のユーザー) として実行されます。cron は、おそらくこれとは別のユーザーとして実行されます。

コアの newletters cron を参照していると仮定すると、相対インクルード パスが正しくないMage_Newsletter_Model_Observer::scheduledSendことに問題がある可能性はほとんどありません。cwdこれにより、最も可能性の高い原因が残ります。a.) cron ユーザーは cron.sh で実行権限を持っていません。b.) cron ユーザーはサーバー上のメール アプリケーションにアクセスできません。ユーザーの PATH。

于 2012-10-01T11:42:26.650 に答える