我已经创建了一个发送自动电子邮件的命令。当我执行homestead ssh
并运行php artisan emails.send
时,会在mailtrap.io帐户中收到一封电子邮件。
我已将此代码添加到kernel.php
$schedule->command('emails:send')->everyFiveMinutes();
我把它放在一个5分钟的间隔,只是为了更容易快速测试它。 我已经进入了Homestead并进行了
php /home/vagrant/Code/soeptime/artisan schedule:run 1>> /dev/null 2>&1
然后我exit
家园,我做了homestead provision
但是,日志中没有任何内容,我仍然没有收到电子邮件,宅基地现在运行超过15分钟。
答案 0 :(得分:6)
您需要手动编辑crontab:
首先:
crontab -e
然后添加
* * * * * php /home/vagrant/Code/soeptime/artisan schedule:run
答案 1 :(得分:0)
Laravel提供了一种方便的方法,可以通过调度来调度Cron作业 每分钟运行一次
schedule:run
个Artisan命令。的schedule:run
命令将检查您在App\Console\Kernel
类来确定应运行的作业。如果您想为Homestead运行
schedule:run
命令 网站,则可以在定义网站时将schedule
选项设置为true
:
sites:
- map: homestead.test
to: /home/vagrant/code/Laravel/public
schedule: true
该站点的Cron作业将在虚拟机的
/etc/cron.d
文件夹中定义。