我可以使用以下代码通过ssh命令行重新索引magento索引:
php -f [path to store]/shell/indexer.php reindex
或使用此代码的单个索引:
php -f [path to store]/shell/indexer.php -- reindex [index]
这很好用。然而,无论何时我尝试通过cron重新索引,我都会得到:
Usage: php -f indexer.php -- [options]
--status <indexer> Show Indexer(s) Status
--mode <indexer> Show Indexer(s) Index Mode
--mode-realtime <indexer> Set index mode type "Update on Save"
--mode-manual <indexer> Set index mode type "Manual Update"
--reindex <indexer> Reindex Data
info Show allowed indexers
reindexall Reindex Data by all indexers
help This help
<indexer> Comma separated indexer codes or value "all" for all indexers
有什么想法吗? 感谢
答案 0 :(得分:2)
尝试添加PHP的路径。试试这个:
/usr/local/bin/php -q [path to store]/shell/indexer.php --reindex catalogsearch_fulltext
这取决于你的PHP路径!
答案 1 :(得分:0)
您需要向我们提供索引器的名称
php -f [path to store]/shell/indexer.php reindex **indexer_code**
indexer_code 如下所述。 例如 //重新索引所有索引
php -f [path to store]/shell/indexer.php reindex all
以下是索引器代码列表
catalog_product_attribute Product Attributes
catalog_product_price Product Prices
catalog_url Catalog URL Rewrites
catalog_product_flat Product Flat Data
catalog_category_flat Category Flat Data
catalog_category_product Category Products
catalogsearch_fulltext Catalog Search Index
cataloginventory_stock Stock Status
tag_summary Tag Aggregation Data
答案 2 :(得分:0)
苏曼的答案有效,但前提是你在ssh中通过crontab -e命令添加它。不确定这是否是由于权限。在我的情况下,indexer.php有755