Laravel 5.7通过AWS EC2 linux ami上的cron进行调度-命令未运行
我已在AWS EC2中创建了一个cron作业,但它在计划时间不工作。当我在cliLaravel 5.7通过AWS EC2 linux ami上的cron进行调度-命令未运行,laravel,amazon-web-services,amazon-ec2,Laravel,Amazon Web Services,Amazon Ec2,我已在AWS EC2中创建了一个cron作业,但它在计划时间不工作。当我在cliphp artisan schedule:run中运行命令时,它工作正常,但不会在计划时间自动执行 php版本=7.2.11 拉维框架=5.7 我使用crontab-e ***/usr/local/bin/php/var/www/html/artisan schedule:run>/dev/null 2>&1 这是我的核心文件 /** * The Artisan commands provided by your
php artisan schedule:run
中运行命令时,它工作正常,但不会在计划时间自动执行
php版本=7.2.11
拉维框架=5.7
我使用crontab-e
***/usr/local/bin/php/var/www/html/artisan schedule:run>/dev/null 2>&1
这是我的核心文件
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands=[
'\App\Console\Commands\ExampleCronJob',
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
$schedule->command('example:mail:send')
->everyMinute();
}
根据我们的评论,问题在于PHP可执行文件的路径。cron作业定义中的路径错误。将其更改为:
* * * * * /usr/bin/php /var/www/html/artisan schedule:run >> /dev/null 2>&1
假设artisan
可执行文件位于/var/www/html
,那么应该可以修复它
如果不确定路径是否正确,可以从项目根目录(artisan所在的位置)键入
pwd
获取artisan可执行文件的正确路径。服务器上的哪个php
的输出是什么?php版本为7.2,输出将为空,因为命令不会在每个时间执行-minute@Mozammil哪个php
将输出php可执行文件的路径。只是想确保你找到了正确的一个。我尝试在path中使用php7.2,但仍然没有working@MozammilJust登录到服务器时,在终端中键入哪个php
,并告知输出。它应该显示类似于/usr/local/bin/php
或/usr/bin/php