Я создал команду Yii, которую нужно запускать каждый месяц. Если я перейду в свою защищенную папку и запустим команду вручную:
protected/yiic ganadores
Он работает нормально. Я попытался добавить следующую командную строку в etc/cron.hourly
и etc/crontab
без успеха:
/usr/bin/php5 /var/www/path/to/project/protected/yiic ganadores
(etc / cron.hourly / ganadores)
0 0 1 * * root /usr/bin/php5 /var/www/path/to/project/protected/yiic ganadores
(etc / crontab)
Если я запускаю файл ganadores
внутри etc/cron.hourly
вручную, он также работает.
Что мне здесь не хватает?
Редактировать: Наконец-то она решена. У меня были дополнительные места в линии cron. Используется вкладка вместо пробелов, и она начала работать.
Вот как я запускаю задания Yii cron (в корневом файле crontab):
45 23 * * * sudo -u www-data php /path/to/yii/app/protected/console.php mycommand
В основном просто регулярный синтаксис crontab, но я запускаю console.php вместо yiic, и я настраиваю пользователя Apache (www-data), чтобы разрешения были корректными для моего скрипта. Я не уверен, почему вы не работаете, но, надеюсь, глядя на меня, вы поможете вам. 🙂