Laravel 4 通过Cronjob发出运行Artisan命令
让crontab/cronjob运行Artisan命令让我有点噩梦 我有另一个Artisan命令通过cronjob运行没有问题,但是第二个命令不会运行 首先,当我执行“crontab-e”并编辑文件以包含:Laravel 4 通过Cronjob发出运行Artisan命令,laravel-4,cron,crontab,Laravel 4,Cron,Crontab,让crontab/cronjob运行Artisan命令让我有点噩梦 我有另一个Artisan命令通过cronjob运行没有问题,但是第二个命令不会运行 首先,当我执行“crontab-e”并编辑文件以包含: 0 0 * * * /usr/local/bin/php /home/purple/public_html/artisan feeds:send cronjob根本不运行 如果我转到cPanel并在那里添加cronjob,它将运行,但我收到以下错误: open(public/downlo
0 0 * * * /usr/local/bin/php /home/purple/public_html/artisan feeds:send
cronjob根本不运行
如果我转到cPanel并在那里添加cronjob,它将运行,但我收到以下错误:
open(public/downloads/feeds/events.csv): failed to open stream: No such file or directory
There are no commands defined in the "feeds" namespace.
问题是文件存在并且目录具有正确的权限。如果我在以root用户或purple用户身份通过SSH登录时运行该命令(php artisan feeds:send),那么该命令将完美地运行并完成其任务,没有问题
如果在cPanel中,我编辑cronjob以使用:
0 0 * * * php /home/purple/public_html/artisan feeds:send
我收到以下错误:
open(public/downloads/feeds/events.csv): failed to open stream: No such file or directory
There are no commands defined in the "feeds" namespace.
有趣的是,我的另一个命令注册在crontab文件中,可以正常工作,在cPanel中根本没有引用
任何帮助都将不胜感激。为了简单起见,我包含了命令和命令使用的模型
Feed.php模型:
DataFeedController.php控制器:
SendFeeds.php命令:
start/artisan.php:
FeedInterface.php接口:
正如您所看到的,有一个GetRates命令,它可以工作。在运行该命令之前,我似乎必须先将cd插入脚本目录,现在在完成该命令之后,它才有意义。当你知道怎么做的时候很容易啊
* * * * * cd /home/purple/public_html/ && /usr/local/bin/php artisan feeds:send