Magento cron工作

时间:2014-08-07 08:20:51

标签: magento magento-1.7

我已将服务器(CPanel)配置为每5分钟在magento根文件夹中运行cron.sh。但它不起作用,数据库中的cron_schedule表为空。这是我的config.xml

<config>
<modules>
    <Company_Facebookreview>
        <version>1.0.0</version>
    </Company_Facebookreview>
</modules>
<global>
    <models>
        <facebookreview>
            <class>Company_Facebookreview_Model</class>
            <resourceModel>facebookreview_mysql4</resourceModel>
        </facebookreview>
        <facebookreview_mysql4>
            <class>Company_Facebookreview_Model_Mysql4</class>
            <entities>
                <facebookreview>
                    <table>facebookreview</table>
                </facebookreview>
            </entities>
        </facebookreview_mysql4>
    </models>
    <resources>
        <facebookreview_setup>
            <setup>
                <module>Company_Facebookreview</module>
                <class>Mage_Sales_Model_Resource_Setup</class>
            </setup>
        </facebookreview_setup>
    </resources>
    <helpers>
        ...
    </helpers>
    <blocks>
        ...
    </blocks>
    <events>
        <sales_order_place_after>
            <observers>
                <place_order_after>
                    <type>singleton</type>
                    <class>Company_Facebookreview_Model_Observer</class>
                    <method>save</method>
                </place_order_after>
            </observers>
        </sales_order_place_after>
    </events>
</global>
<crontab>
    <jobs>
        <facebookreview>
            <schedule>
                <cron_expr>*/5 * * * *</cron_expr>
            </schedule>
            <run>
                <model>facebookreview/observer::methodName</model>
            </run>
        </facebookreview>
    </jobs>
</crontab>

这是我的公司/ Facebookreview / Model / Observer.php

class Company_Facebookreview_Model_Observer extends Varien_Event_Observer
{
public function save(Varien_Event_Observer $observer) {

}
public function methodName($schedule) {
    Mage::log('cron working fine');//cache is disabled and var folder has 777 permissions and var folder hasnt log folder
}
}

缓存已禁用,var文件夹具有777权限,var文件夹没有日志文件夹。 我正在使用Magento Comunity 1.9。我做错了什么?请帮忙......

2 个答案:

答案 0 :(得分:0)

如果您的表cron_schedule表为空,那么很可能系统cron不工作或者没有添加magento cron。

请交叉检查。 您可以将Magento Cron添加到系统cron中,如下所示:

*/5 * * * *  /bin/sh /path/to/magento/cron.sh

或者您可以使用PHP方式添加。

另外,要确认magento cron工作正常并且问题是由上述任一情况引起的,请尝试在浏览器中打开以下URL:

www.MAGENTOSITE.COM/cron.php

如果运行此URL在cron_schedule中创建条目,那么您需要检查上述内容。

答案 1 :(得分:0)

我有两个建议。

更新cron.php

如果你正在使用Magento 1.8,那么这将解释你需要做什么:http://www.a2hosting.com/kb/installable-applications/optimization-and-configuration/magento1/cron-jobs-do-not-run-on-magento-1-8-after-upgrade

确保您使用的是正确版本的php

可能只是你在使用旧版本的php!默认情况下,在我的情况下,在1和1上,只需使用php命令获取v4.4.9。我必须明确强制php v5,然后它才有效!

我还建议安装Fabrizio Branca的AOE Scheduler extension