Laravel 服务器中的 cronjob 不会 运行
Laravel cronjob in server won't run
我在我网站的子域上安装了我的 laravel 应用程序,我已经设置了 cronjob 但它没有触发。
我已经通过终端测试了我的命令并且它的触发很好所以问题是关于 cronjob 而不是我的 command/console 我猜。
代码
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();
}
有什么想法吗?
Cronjobs 在 运行 时忽略 PATH,因此如果 PATH 信息不完全可用,它可能无法工作。
请尝试修改 cronjob 以便使用完整路径
例如,将“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
还请包括 artisan 的完整路径。谢谢
已解决
显然我必须从其他地方 /usr/local/lsws/lsphp74/bin/php
而不是 /usr/bin/php
得到我的 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
为了简化上面的命令并使其易于阅读,这里是它的结构:
PHP
LARAVEL_APP
&&
PHP
ARTISAN COMMAND
>> /dev/null 2>&1
我在我网站的子域上安装了我的 laravel 应用程序,我已经设置了 cronjob 但它没有触发。
我已经通过终端测试了我的命令并且它的触发很好所以问题是关于 cronjob 而不是我的 command/console 我猜。
代码
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();
}
有什么想法吗?
Cronjobs 在 运行 时忽略 PATH,因此如果 PATH 信息不完全可用,它可能无法工作。
请尝试修改 cronjob 以便使用完整路径
例如,将“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
还请包括 artisan 的完整路径。谢谢
已解决
显然我必须从其他地方 /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
为了简化上面的命令并使其易于阅读,这里是它的结构:
PHP
LARAVEL_APP
&&
PHP
ARTISAN COMMAND
>> /dev/null 2>&1