我已提及magentocommerce.com来设置cron作业。我实现了从中得到的东西。起初我在config.xml文件中添加了cront选项卡。我为我的模块“Ownmodule_Autocancel”所做的工作如下所示:
<crontab>
<jobs>
<ownmodule_auto_cancel>
<schedule><cron_expr>*/5 * * * *</cron_expr></schedule>
<run><model>order/observer::cancelPendingOrders</model></run>
</ownmodule_auto_cancel>
</jobs>
</crontab>
然后我在linux中打开终端,获得了文件权限,
crontab -e
* / 5 * * * * php -q /var/www/LIVE/magento/cron.php
Ctrl + x - &gt; Y(保存)
ps aux | grep ping(我在终端窗口得到的是)
itss 7746 0.0 0.1 95996 2664? Sl 09:29 0:00 / usr / lib / i386-linux-gnu / unity-lens-shopping / unity-shopping-daemon
itss 10106 0.0 0.0 4436 820 pts / 0 S + 11:18 0:00 grep --color = auto ping
杀死7746
ps aux | grep ping(我在终端窗口得到的是)
itss 10106 0.0 0.0 4436 820 pts / 0 S + 11:18 0:00 grep --color = auto ping
crontab -l(我在终端窗口得到的是)
* / 5 * * * * php -q / var / www / LIVE / magento / cron.php
但事情并非如此。我不知道如何在后端cron(计划任务)中安排时间5分钟。请检查上述工作并给我正确的解决方案。这是为我的模块完成的。如果我错过了设置cron工作的其他任务,请告诉我。
答案 0 :(得分:0)
在每个cron.php运行中,系统会安排所有应该及时启动的作业等于&#34;预先计划&#34;领域。然后它检查是否应该运行所有挂起(已安排)的作业,如果是,则启动该过程。
&#34;生成每个时间表&#34;是生成到队列的调度之间的时间间隔。 &#34;提前计划&#34;是一个时间间隔,它确定将cronjobs添加到待处理队列中的时间。
所以基本上你应该设置&#34;预先计划&#34;与&#34;生成时间表相同&#34;或者更大一些。时间取决于您,但它应该大于您在SSH crontab中设置的时间。
要检查crontab是否正常工作,您可以检查数据库表&#34; cron_schedule&#34;查看是否安排了任何工作。
是&#34; php&#34;或者&#34; usr / bin / php&#34;取决于服务器。它可能是&#34; usr / local / bin / php&#34;。