【发布时间】:2015-12-16 06:08:28
【问题描述】:
我在 Laravel 中发送电子邮件时遇到了一个奇怪的问题。
我使用 Mailgun,并且可以在用户注册时很好地发送电子邮件等等。
我开始使用调度命令,并创建了一个自定义工匠命令来获取一些记录并为此发送一些电子邮件。
但是当我运行这个命令时,我得到一个错误:
cURL 错误 60:SSL 证书问题:无法获取本地颁发者 证书
我已经在本地设置了一个cacert.pem 并在我的php.ini 文件中成功链接了它,这就是我能够正常发送电子邮件的方式。
我不明白为什么当我可以在控制器内正常发送电子邮件时,我的命令却无法发送电子邮件。
这是我用于命令的代码:
$reminders = Reminder::where('utcReminderDate' , '<=', \Carbon\Carbon::now()->format('Y-m-d H:i'))->get();
foreach($reminders as $reminder)
{
Mail::send('emails.test', [], function($message) {
$message->to('me@example.com', 'Joe Bloggs');
$message->subject('A reminder for you');
});
}
我想要获取所有需要发送的提醒并循环发送它们。
当我通过命令行运行命令来测试它时,它会吐出上面的错误。
我们将不胜感激任何帮助发送电子邮件。如果有影响,我会使用 WAMP。
【问题讨论】:
-
一般cli使用不同的php.ini
标签: php laravel curl laravel-5.1 guzzle