Работа с Cron давно стала обыденной, но всегда, по крайней мере у меня, вызывает какие-то новые проблемы и недоразумения. Давайте разберемся, как настроить вызов консольной команды Yii2 при помощи Cron.
Особенности работы с самим crontab я описывал ранее, поэтому сейчас остановимся на конкретном примере вызова консольного приложения Yii2.
Итак, типовой пример команды выглядит следующим образом:
/usr/bin/php /var/www/site/yii test/init > /var/www/site/log.dat
Разберем из чего состоит эта строка:
— в начале указываем путь к php (в абсолютном большинстве это /usr/bin/php)
— далее абсолютный путь к директории Вашего приложения и файлу yii
— после этого, при необходимости можно указать файл, в который будет записываться информация, которую будет выводить Ваш скрипт. Это может быть полезно, т.к. часто окружение настроено так, что любой вывод направляется на почту, указанную в директиве MAILTO — а это может создать неудобства. Если Вы хотите полностью выключить вывод — заменить указанный код на
>/dev/null 2>&1
Прекрассная статья по возможным проблемам добавления задач и путям их решения тут