Laravel 调度程序不工作

Laravel scheduler not working

我有一个 Laravel 5 应用程序,我想在其中 运行 cronjobs,我创建了一个命令,每 5 分钟 运行ning 一次。

但出于某种原因,它从未被调用过。

我添加了以下crontab。

*   *   *   *   *   php /var/www/vhosts/website.com/httpdocs/artisan schedule:run

我检查了 cron 日志文件,看起来是 运行ning:

Apr 15 10:19:01 lvps92-51-xx-xx CROND[15420]: (root) CMD (php /var/www/vhosts/website.com/httpdocs/artisan schedule:run)

但它从不调用命令。 有趣的是,如果我 运行 命令手动运行...

[root@lvps92-51-xx-xx /]# php /var/www/vhosts/website.com/httpdocs/artisan schedule:run    
Running scheduled command: (touch /var/www/vhosts/website.com/httpdocs/storage/framework/schedule-c56ad4a76ba9d8e31def649e20c42f73; /usr/local/php566-cgi/bin/php artisan test:run; 
rm /var/www/vhosts/website.com/httpdocs/storage/framework/schedule-c56ad4a76ba9d8e31def649e20c42f73) > /dev/null 2>&1 &

Laravel 日志中没有日志条目。

(我知道我 运行 以 root 身份执行 cronjob,但那是为了避免在测试时出现权限错误)

Laravel版本:5.0.27
服务器:Centos 6

我错过了什么?

发现问题所在,我安装了 1 个以上的 PHP 版本,并且出于某种原因 cron 使用默认 php 安装,即使我添加了新的 PHP .bash_profile.

的路径

我通过向右 PHP 版本添加路径来修复它:

*   *   *   *   *   /usr/local/php566-cgi/bin/php /var/www/vhosts/website.com/httpdocs/artisan schedule:run 1>> /dev/null 2>&1 

这样它就被迫 运行 使用那个 PHP 版本。

前几天我也遇到了这个问题,我就是这样解决的。 我实际上是在使用 hostmonster 来托管我的应用程序。 我的 cron 作业每分钟运行一次。

*   *   *   *   *   /usr/local/bin/php path/to/artisan schedule:run 1>> /dev/null 2>&1

希望对您有所帮助