Laragon和Laravel-Sendmail不工作
我使用的是Windows 10、Laragon和Laravel框架。
我通过调用php artisan make:auth
问题是当我尝试使用忘记密码组件时,‘sendmail’不起作用。
在我点击Send Password Reset Link
后,没有任何反应。并且Password Reset Link
不会发送到Laragon的Mail Catcher
。
这是.env
中的配置
MAIL_DRIVER=sendmail
MAIL_SENDMAIL="C:laragoninsendmailsendmail.exe -bs"
这在config/mail.php
内
'sendmail' => env('MAIL_SENDMAIL', '/usr/sbin/sendmail -bs'),
解决方案
首先,我使用从我的Cpanel托管电子邮件帐户获得的自定义用户名和密码来设置Laravel邮件。它未通过Sendmail配置或SMTP配置通过。
阅读文档时,我注意到laravel确实扩展了快速邮递员类。我就是这样做的。
$user = User::find(1);
$text = (new WelcomeEmail($user))->render();
// Create the Transport
$transport = (new Swift_SmtpTransport(env('MAIL_HOST'), 25))
->setUsername(env('MAIL_USERNAME'))
->setPassword(env('MAIL_PASSWORD'))
;
// Create the Mailer using your created Transport RFCValidation
$mailer = new Swift_Mailer($transport);
// Create a message
$message = (new Swift_Message('Happy to Have You Onboard'))
->setFrom([env('MAIL_FROM_ADDRESS') => env('MAIL_FROM_NAME')])
->setTo(['miracle@yahoo.com'])
->setBody($text , 'text/html')
;
$message->setReadReceiptTo(env('MAIL_FROM_ADDRESS'));
// Send the message
$result = $mailer->send($message);
现在
"新欢迎电子邮件"
是捆绑邮件视图的Laravel邮件对象。您可以使用上面的代码出色地创建您自己的邮件类,从而使您的代码变得细小且可扩展。
相关文章