是否可以通过app / etc / local.xml禁用系统crontab作业(例如来自Mage_Catalog的“catalog_product_index_price_reindex_all”)?
答案 0 :(得分:3)
我说要避免攻击shell索引器或核心。
创建一个自定义模块并重写计划,例如在2月31日运行(这将永远不会发生)。
或者,如果您想要全局禁用它,并且即使您确实需要全部重新索引,也要避免运行它,那么只需覆盖catalog/observer
观察者模型并添加reindexProductPrices()
方法即可返回方法。
答案 1 :(得分:1)
这是解决方案,但您应该使用自定义模块重写Mage / Catalog / etc / config.xml
快速解决方案:
转到核心并删除代码
示例:app / code / core / Mage / Catalog / etc / config.xml
删除
<crontab>
<jobs>
<catalog_product_index_price_reindex_all>
<schedule>
<cron_expr>0 2 * * *</cron_expr>
</schedule>
<run>
<model>catalog/observer::reindexProductPrices</model>
</run>
</catalog_product_index_price_reindex_all>
</jobs>
</crontab>
解决方案2 :
转到* / shell / indexer.php
在第154行附近找到此代码
if ($this->getArg('reindex')) {
$processes = $this->_parseIndexerString($this->getArg('reindex'));
} else {
$processes = $this->_parseIndexerString('all');
}
评论$processes = $this->_parseIndexerString('all');
是
if ($this->getArg('reindex')) {
$processes = $this->_parseIndexerString($this->getArg('reindex'));
} else {
// $processes = $this->_parseIndexerString('all');
}