Magento Cron 作业正在运行 - AOE 调度程序没有心跳

问题描述 投票:0回答:2

我正在使用我的开发网站通过 MageMonkey/Mandrill 测试废弃的购物车电子邮件。我相信我已经将 cron 作业配置为其他事务性电子邮件发送时没有问题(也许这个假设是错误的?)。

我还安装了 AOE Scheduler,它显示了所有正确的 cron 作业。在我手动运行心跳并生成计划后 - 没有其他任何运行,并且我收到通知“心跳早于 xx 分钟。”

老实说,我不确定我的问题出在哪里 - 是否是因为我在开发站点(不应该是因为其他电子邮件发送)、cron 作业配置或 AOE 调度程序等。

在我的 magento 管理配置下,我有以下内容: 每 15 生成一次时间表 提前安排30 如果未在 45 天内运行则错过 成功历史 寿命 1440 故障历史寿命 1440 心跳任务 */5 * * *

我正在使用 Magento 1.7

谢谢大家!这对我来说很新鲜

这是我的 cron.php 文件 -

需要“app/Mage.php”;

if (!Mage::isInstalled()) {
    echo "Application is not installed yet, please complete install wizard first.";
    exit;
}

// Only for urls
// Don't remove this
$_SERVER['SCRIPT_NAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_NAME']);
$_SERVER['SCRIPT_FILENAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_FILENAME']);

Mage::app('admin')->setUseSessionInUrl(false);

umask(0);

try {
    Mage::getConfig()->init()->loadEventObservers('crontab');
    Mage::app()->addEventArea('crontab');
    Mage::dispatchEvent('default');
} catch (Exception $e) {
    Mage::printException($e);
}
php magento cron
2个回答
6
投票

我也遇到了同样的问题,cronjobs 不起作用。我搜索并找到了适合我的解决方案。我的 Magento 是版本。不过 1.9.1。

http://support.xtento.com/wiki/Setting_up_the_Magento_cronjob

我在 cron.php 中添加了以下行

$isShellDisabled = true;

行后

$isShellDisabled = (stripos(PHP_OS, ‘win’) === false) ? $isShellDisabled : true;

希望这可以帮助有同样问题的人。


1
投票

大多数交易电子邮件在运行时通过 Magento 的事件系统同步触发。我无法询问有关您的开发环境的任何后续问题,但是您确定您的系统 cron 已设置为触发 Magento 的 cron 服务吗? AOE Scheduler 可以生成 cron 计划,但您仍然需要系统 cron 来调用 Magento 的 cron 服务。

要执行所有这些配置的任务,cron.php 文件位于 Magento root 需要定期运行,例如每 15分钟。基本上,这个脚本将检查是否需要运行任何 任务,以及是否需要安排任何未来的任务。

虽然设置系统 cron 服务对于让所有 Magento 的计划任务正常运行至关重要,并且出于测试目的我仍然建议这样做,但您也可以 使用 AOE Scheduler 从管理面板立即运行特定作业。查看链接文章中的屏幕截图,其中显示了可以执行此操作的屏幕。只需选择您需要运行的作业,然后从“操作”框中选择“立即运行”即可。

您也可以选择直接运行任务。对此要小心,因为 执行可能持续超过几秒钟或者可能取决于 一些其他命令行环境设置。用于测试小任务 这可能仍然是一个舒适的选择。

© www.soinside.com 2019 - 2024. All rights reserved.