我创建了一个需要每月运行的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线上有一些额外的空格。使用tab而不是空格,它开始工作..
答案 0 :(得分:6)
这就是我运行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),因此权限对我的脚本是正确的。我不确定你为什么不工作,但希望看着我的工作会帮助你。 :)