2015-04-02 230 views
0

我参考magentocommerce.com来设置cron作业。我实现了我从中得到的结果。起初,我在config.xml文件中添加了cront选项卡。我已经为我的模块 “Ownmodule_Autocancel” 完成所示:magento中的cron作业设置

<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 aux | grep ping(我在终端窗口得到的是)

itss 7746 0.0 0.1 95996 2664? SL 9点29 0:00/usr/lib中/ I386-Linux的GNU /团结透镜购物/团结购货守护

ITSS 10106 0.0 0.0 4436 820 PTS/0 S + 11:18 0:00的grep --color =自动平

杀7746

的ps aux | grep的坪(我在终端窗口得到的是)

ITSS 10106 0.0 0.0 4436 820 PTS/0 S + 11:18 0:00的grep --color =自动平

的crontab -l (我在终端窗口得到的是)

*/5 * * * * PHP -q /无功/网络/现场/ Magento的/ cron.php

但自己是不是沃金。我不知道如何在后端计划时间(计划任务)中安排时间5分钟。请检查上述工作,并给我正确的解决方案。这是为我的模块完成的。而且,如果我错过了一些其他任务来完成设置cron工作,请让我知道。

+0

可能的重复[如何在MAGENTO中设置CRON JOB?](http://stackoverflow.com/questions/10053241/how-to-setup-a-cron-job-in-magento) – powershell 2015-04-02 06:47:27

+0

There only I '有疑问..我的意思是在系统 - >配置 - >高级 - >系统 - > cron(如何设置这个)...也有疑问在行'*/5 * * * * php -q/var/www/LIVE/magento/cron.php' ..这是正确的..因为在其他一些网站,我得到了像'*/5 * * * * usr/bin/php -f/var/www/LIVE/magento/cron.php' ..所以只有我张贴在这里..请清除这两个,也让我知道我是否想要设置cron或这个mch的其他任务是足够的 – 4519398 2015-04-02 07:35:06

回答

0

在每个cron.php运行时,系统安排应该在时间上等于“Schedule Ahead for”字段开始的所有作业。然后它检查是否所有待处理(已安排)的作业都运行,如果是的话,它会启动处理。

“生成计划每个”是计划生成到队列之间的时间间隔。 “预定时间表”是一个时间间隔,它决定了cronjobs应该如何在时间上加入待决队列。

所以基本上你应该把“预先计划”设置为“生成每个计划”或者更大一点。时间由您决定,但应该比您在SSH crontab中设置的时间更长。

要检查crontab是否正常工作,可以检查数据库表“cron_schedule”以查看是否有任何计划的作业。

它是“php”还是“usr/bin/php”取决于服务器。它可能是“usr/local/bin/php”。

+0

如何知道我的是“PHP “或”usr/bin/php“? “usr/local/bin/php”中的本地文件是什么? – 4519398 2015-04-03 06:35:50

+0

它是你的服务器上的php实例路径。 SSH命令“whereis php”应显示该路径。 – Aivoris 2015-04-03 12:09:22