Відповіді:
Найкраще було б запустити cron.sh
Станом на Magento EE 1.13.x та CE 1.8.x, механіка кронів змінилася, коли Magento ввів нову функцію режиму планування.
Є два доступних режими: 1. за замовчуванням - запускає заплановані крони. 2. завжди - як видно з назви, ці завдання беззастережно виконуватимуться щоразу, коли запускається крон, і не потрібні чітко визначені графіки.
В основному виклик cron.php без будь-яких параметрів використовує shell_exec для виконання двох процесів cron.sh. Кожен з різними параметрами ("за замовчуванням" або "завжди"). Cron.sh, в свою чергу, повертає цей параметр назад до cron.php, який потім виконує cron. Внутрішньо Magento використовує свою інфраструктуру подій для обробки двох режимів, розсилаючи події з іменами "за замовчуванням" та "завжди". Потім Mage_Cron реалізує два методи спостерігача.
Переглядаючи cron.php, ви помітите використання функції PHP shell_exec. Крім проблеми безпеки, функція може повертати NULL і тоді, коли виникає помилка або програма не видає вихід. Неможливо виявити збої у виконанні за допомогою цієї функції. Це означає, що в будь-який момент, коли ваш скрипт / код виходить з ладу через помилку, трапляється таке: 1. Cronjob стає несвіжим, 2. Жодна помилка не зафіксована, 3. і ніхто не знає, що щось із цього не сталося.
Щоб подолати це, слід додати такі:
*/5 * * * * www-data /bin/sh /path/to/magento/cron.sh cron.php -m=default
*/5 * * * * www-data /bin/sh /path/to/magento/cron.sh cron.php -m=always
Це забезпечить, що режими процесу завжди працюватимуть без використання резервної функції PHP shell_exec, і що крона не повинна старіти, оскільки виняток буде викинуто, якщо сталася помилка.
*/5 * * * * www-data /bin/sh /path/to/magento/cron.sh cron.php -m=default */5 * * * * www-data /bin/sh /path/to/magento/cron.sh cron.php -m=always
і ці команди дають помилку "команда не знайдена" від Nupur walia
*/5 * * * * /bin/sh /path/to/magento/cron.sh cron.php -m=default
www-data
зміниться на те, що користувач виконує процеси веб-сервера. Також варто зазначити, що для багатьох установок хостингу CPanel / WHMshell_exec()
буде відключено.