我推荐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 -> Y(用于保存) ps \ grep ping (我在终端窗口得到的是) itss 77460.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 pt/0 S+ 11:18 0:00 grep -color=auto 杀7746 ps \ grep ping (我在终端窗口得到的是) itss 10106 0.0 0.0 4436 820 pt/0 S+ 11:18 0:00 grep -color=auto crontab -l (我在终端窗口中得到的是) -q/var/www/LIVE/magento/cron.php */5***
但有些事不管用。我不知道如何安排时间在后端cron (预定任务)5分钟。请检查上面的工作,并给我正确的解决方案。这是为我的模块做的。此外,如果我错过了一些其他的任务来设置cron的工作,请告诉我。
发布于 2015-04-02 13:05:25
在每次运行cron.php时,系统都会安排所有的作业,这些作业应该及时启动,相当于“预先为”字段进行调度。然后,它检查是否所有挂起(已排定)的作业都应运行,如果是,则启动进程。
“生成计划的每一个”是计划生成到队列之间的一个时间间隔。“提前调度”是一个时间间隔,它决定如何在时间内将cron作业添加到挂起的队列中。
因此,基本上,您应该为“提前”设置“计划”,与“生成每个计划”或更大一点的时间表相同。时间由您决定,但它应该比您在SSH crontab中设置的时间更长。
若要检查crontab是否有效,可以检查数据库表"cron_schedule“,以查看是否有计划的作业。
它是"php“还是"usr/bin/php”取决于服务器。可以是"usr/local/bin/php“。
https://stackoverflow.com/questions/29406187
复制相似问题