Magento 2 Cron bin/magento must be run as a CLI application

In versiunea 2.0 de la Magento cron-ul de indexare necesita rularea php in modul CLI. In admin apare mesajul: One or more indexers are invalid sau bin/magento must be run as a CLI application. Make sure your Magento cron job is running.

Accesati cPanel > Cron Jobs si cautati linia cu comanda de indexare si inlocuiti comanda php cu php-cli:

* * * * *   php /home/username/public_html/bin/magento indexer:reindex
*/5 * * * *   php-cli /home/username/public_html/bin/magento indexer:reindex
Puteti rula binarul php in diferite versiuni, aveti mai jos cateva exemple (cPanel EA4):
/opt/cpanel/ea-php56/root/usr/bin/php
/opt/cpanel/ea-php70/root/usr/bin/php

Pentru a verifica modul de rulare a php (PHP_SAPI) in cron folositi php -v:
*/5 * * * * /opt/cpanel/ea-php70/root/usr/bin/php -v > phpversion.log 
Verificati phpversion.log daca contine cli sau cgi-fcgi:
PHP 7.0.33 (cli) (built: Dec 11 2018 06:07:07) ( NTS ) 

INFO: In functie de dimensiunea sitului si de intervalele de actualizare a datelor din magazin puteti seta un interval mai rar de rulare a cron-ului pentru a evita consumul excesiv de resurse:
O data la 5 minute */5****
O data la 15 minute */15****
De 2 ori pe ora 0,30****


In cazul in care nu aveti aceasta inregistrare in lista de cron (Current Cron Jobs) va trebui sa o adaugati in zona Add a New Cron Job:

Common Settings: Once Per Five Minutes (*/5****)
Command: php-cli /home/username/public_html/bin/magento indexer:reindex

Nota: Inlocuiti  username  cu utilizatorul contului cPanel. De asemenea verificati calea pana la instalarea magento, in acest exemplu magento este instalat in radacina sitului public_html

  • magento2, cron, php, cli
  • 1 Users Found This Useful
Was this answer helpful?