Magento 2:重新索引不起作用

时间:2015-11-02 13:46:12

标签: magento magento2

我无法在 magento 2 中执行重新编制索引。谷歌之后,我得到了解决方案,我们可以使用shell命令重新索引

php dev/shell/indexer.php reindexall

但是它给出了错误

Could not open input file: dev/shell/indexer.php

我无法在 dev 中看到 shell 文件夹。

11 个答案:

答案 0 :(得分:15)

通过终端从magento root发出此命令

重新索引所有: php bin / magento indexer:reindex

reindex perticuler: php bin / magento indexer:reindex indexer_name

indexer_name 应该在哪里 catalog_category_product,catalog_product_category,catalog_product_price,catalog_product_attribute,cataloginventory_stock,catalogrule_rule,catalogrule_product,catalogsearch_fulltext。

答案 1 :(得分:6)

在根magento目录中输入以下内容:

php bin / magento indexer:reindex

这将执行完整的重新索引。如果您只想重新索引其中一个索引器,则命令如下:

php bin / magento indexer:reindex indexer_name

可以通过输入以下内容找到indexer_name:

php bin / magento indexer:info

答案 2 :(得分:2)

使用命令提示符

转到Magento根目录。

cd your_magento_directory

然后运行以下命令

php bin/magento indexer:reindex

如果您想专门进行重新索引,那么您的评论将是:

php bin/magento indexer:reindex [indexer] 

答案 3 :(得分:1)

这对我有用。

您可以手动运行reindex。转到magento安装文件夹根目录下的magento bin文件夹并运行: $ php magento indexer:reindex

参考:http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-index.html

更好的方法是配置cronjob。按照此处的指南进行操作:http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-cron.html#config-cli-cron-bkg

Magento2的目的是在管理员中无需手动重新索引。请参阅:https://github.com/magento/magento2/issues/824

答案 4 :(得分:1)

http://devdocs.magento.com/guides/v2.0/comp-mgr/prereq/prereq_compman-ulimit.html 为Web服务器用户设置ulimit

可选择在用户的Bash shell中设置值:

如果尚未执行此操作,请切换到Magento文件系统所有者。 在文本编辑器中打开/home//.bashrc。 添加以下行:

ulimit -s 65536 将更改保存到.bashrc并退出文本编辑器。

答案 5 :(得分:0)

在magento2中,他们在shell目录下没有indexer.php。 如果您运行magento cron:run两次,它将重建索引。

命令行界面

Reindex CLI

答案 6 :(得分:0)

那是对的。要使索引器保持最新,请将cron作为Magento file system owner运行。

一种方法是为该用户设置crontab:

*/1 * * * * php <your Magento install dir>/bin/magento cron:run &

详细信息:http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-cron.html

答案 7 :(得分:0)

shell folder are reside under dev directory of magento2 root.
Open your cmd.
go to magento bin directory path using CLI.
Your path like C:\wamp\www\magento2\bin.(if wamp is installed on C directory)
Now You have to enter command php magento indexer:reindex
All indexing are successfully reindex.

您可以在magento核心文档链接中查看更多信息:http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-index.html

答案 8 :(得分:0)

如果在Linux上使用xampp,则CLI命令为

/opt/lampp/bin/php bin/magento indexer:reindex

答案 9 :(得分:0)

对于Windows系统,您必须按照以下步骤操作:

步骤:1创建环境变量

Go to My Computer -> Right Click -> Properties -> Advanced System Settings -> Advanced -> Environment Variable -> System Variable -> Path -> Edit -> Enter you xampp->php path (Example : E:\xampp\php).

步骤:2打开CMD并在Magento项目的根文件夹上运行以下命令

php bin/magento indexer:reindex

答案 10 :(得分:0)

您可以使用两种方法重新索引Magento 2。

1-通过管理面板重新编制索引

要这样做,请先登录到Magento登录名

转到系统>工具>索引管理

选中每种要更改的索引器旁边的复选框

从“操作”下拉列表中选择索引编制模式

然后点击提交 enter image description here

2-使用CLI重新编制索引

运行以下命令以重新索引Magento 2

Bin / magento indexer : reindex [indexer]

通过运行以下代码行,您可以查看索引器列表。

bin / magento indexer:info

通过应用以下代码,您可以检查Indexer Status。有时re-index命令不会更新所有索引器。

bin / magento  indexer : status

您也可以阅读此文章以了解更多详细信息-https://www.fmeextensions.com/blog/magento-2-reindex-from-admin/