简体   繁体   English

服务器中的 Laravel cronjob 无法运行

[英]Laravel cronjob in server won't run

I have my laravel app installed on subdomain of my website and I've set cronjob but it does not fire.我在我网站的子域上安装了我的 Laravel 应用程序,并且我已经设置了 cronjob 但它没有触发。

I've tested my command by terminal and its firing just fine so the issue is all about cronjob and not my command/console I guess.我已经通过终端测试了我的命令并且它的发射很好,所以我猜问题全在于 cronjob 而不是我的命令/控制台。

Code代码

Does not work

1- /home/example.com/public_html/process.example.com && php artisan schedule:run >> /dev/null 2>&1

2- php /home/example.com/public_html/process.example.com && php artisan schedule:run >> /dev/null 2>&1

kernel.php

protected $commands = [
    Commands\RenewInvoices::class,
];

protected function schedule(Schedule $schedule)
{
  $schedule->command('renew:invoices')
  ->everyMinute();
}

Any idea?任何的想法?

Solved解决了

Apparently I had to get my php from other place /usr/local/lsws/lsphp74/bin/php rather than /usr/bin/php显然我不得不从其他地方获取我的 php /usr/local/lsws/lsphp74/bin/php而不是/usr/bin/php

/usr/local/lsws/lsphp74/bin/php /home/example.com/public_html/process.example.com && /usr/local/lsws/lsphp74/bin/php /home/example.com/public_html/process.example.com/artisan schedule:run >> /dev/null 2>&1

To simplify command above and make it easy to read here is it's structure:为了简化上面的命令并使其易于阅读,它的结构是:

PHP LARAVEL_APP && PHP ARTISAN COMMAND >> /dev/null 2>&1 PHP LARAVEL_APP && PHP ARTISAN COMMAND >> /dev/null 2>&1

Cronjobs ignore PATH when it is run, so it may not work if the PATH information is not fully available to it. Cronjobs 在运行时会忽略 PATH,因此如果 PATH 信息不完全可用,它可能无法工作。

Please try amending the cronjob so that the full path is used请尝试修改 cronjob 以便使用完整路径

For example, change "php" to "/usr/bin/php" (pls use your actual path of php in your server)例如,将“php”更改为“/usr/bin/php”(请使用您服务器中php的实际路径)

 /home/example.com/public_html/process.example.com && /usr/bin/php artisan schedule:run >> /dev/null 2>&1

/usr/bin/php /home/example.com/public_html/process.example.com && /usr/bin/php artisan schedule:run >> /dev/null 2>&1

Please also include the full path of artisan.还请包括工匠的完整路径。 Thanks谢谢

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM