Как настроить автоматическое выполнение индексирования на сервере
На локальном сервере работает подобное на консоли shell работает
php C:\xampp\htdocs\modernlady\bin\magento indexer:reindex
Customer Grid index has been rebuilt successfully in 00:00:13
Category Products index has been rebuilt successfully in 00:00:03
Product Categories index has been rebuilt successfully in 00:00:00
Product Price index has been rebuilt successfully in 00:00:07
Product EAV index has been rebuilt successfully in 00:00:01
Stock index has been rebuilt successfully in 00:00:01
Catalog Rule Product index has been rebuilt successfully in 00:00:01
Catalog Product Rule index has been rebuilt successfully in 00:00:00
Catalog Search index has been rebuilt successfully in 00:00:09
А как такое же настроить на хостинге в планировщике задач? Как пример предлагают
PHP command examples:
General example:
/usr/local/bin/php /home/shanhai2/public_html/path/to/cron/script
Но что это за скрипт? где его брать? тут же просто команда?
Ваша команда запускает процесс реиндекса. Но если настроить корректно крон задачи (их 3 для разных задач), то отдельно запускать реиндек будет не надо.
Скрипт это
php bin/magento cron:run
Тут подробно
http://devdocs.magento.com/guides/v2.2/config-guide/cli/config-cli-subcommands-cron.html
Там в статье не совсем понятно что конкретно делать((( тем более на сервере(Подскажите пожалуйта!
Куда же понятнее то?
Вам надо запускать по крону 3 команды
* * * * * /usr/bin/php /var/www/html/magento2/bin/magento cron:run 2>&1 | grep -v Ran jobs by schedule >> /var/www/html/magento2/var/log/magento.cron.log * * * * * /usr/bin/php /var/www/html/magento2/update/cron.php >> /var/www/html/magento2/var/log/update.cron.log * * * * * /usr/bin/php /var/www/html/magento2/bin/magento setup:cron:run >> /var/www/html/magento2/var/log/setup.cron.log
Как именно на конкретном сервере настраивать - узнавайте у хостера.
* * * * * - запуск каждую минуту
/usr/bin/php - интерпритатор, который будет обрабатывать программу magento. Может лежать по любому пути и называться по разному, хоть php5, хоть php7.1, хоть просто php
/var/www/html/magento2/bin/magento - путь до исполнимого файла magento.
cron:run ... - параметры запуска программы
Я вроде так и сделала - прописала эти три задания в планировщик. Но в админке все равно ошибка
Для Вас важна первая команда php magento indexer:reindex и тогда на виртуальном (дешевом) хостинге у вас есть шанс запустить Magento 2
Применяемые инструменты: в cpanel есть shell или доступ ssh и PuTTY.
По пунктам:
1. Для вас самая важная команда php magento indexer:reindex ее и нужно запустить в cron с периодичностью вашего обновления товарной базы.
2. В cpanel есть доступ SSH. Скачав и помучившись с запуском PuTTY вы получите консоль.
3. Зачем это нужно? В консоли вы сможете запустить все команды из Текущие запланированные задания и посмотреть ход выполнения. Не исключено, что придется переписать пути и указать правильную версию PHP для запуска magento
4. Запустив правильную команду php magento indexer:reindex в cron вы спокойно займетесь наполнением товаров.