在过去的5个小时里,我一直把头发拉出来,超出了我认为简单的任务,为Laravel启用了cron功能。我在Amazon EC2 Ubuntu LAPP堆栈服务器上运行Laravel 5.1。
我已使用命令
将cron任务添加到cron作业列表中sudo crontab -e
然后我添加了laravel文档中列出的命令
* * * * * php /home/bitnami/htdocs/project/app/artisan schedule:run >> /dev/null 2>&1
我确保cron正在运行,如果我运行
,我可以看到任务正在运行sudo grep -i cron /var/log/syslog|tail -3
返回
Mar 4 15:36:01 ip-172-31-7-174 CRON[15120]: (root) CMD (php /home/bitnami/htdocs/project/app/artisan schedule:run >> /dev/null 2>&1)
Mar 4 15:37:01 ip-172-31-7-174 CRON[15123]: (root) CMD (php /home/bitnami/htdocs/project/app/artisan schedule:run >> /dev/null 2>&1)
Mar 4 15:38:01 ip-172-31-7-174 CRON[15125]: (root) CMD (php /home/bitnami/htdocs/project/app/artisan schedule:run >> /dev/null 2>&1)
我已经通过从命令行运行命令测试了路径中没有任何拼写错误并且它正常工作
php /home/bitnami/htdocs/project/app/artisan schedule:run
此外,我添加了这个cron任务只是为了确认cron正在运行
* * * * * echo "Cron" > /home/bitnami/htdocs/project/app/artisan/file.txt
我还通过执行以下操作确保文件是可执行的,但这并没有解决问题
chmod 755 artisan
chmod 777 artisan (I am aware this is dangerous)
chmod +x artisan (Suggested on fourms)
有没有人对我在这里出错的地方有任何建议。