Laragon和Laravel-Sendmail不工作

2022-05-27 00:00:00 windows sendmail php laravel laragon

我使用的是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邮件对象。您可以使用上面的代码出色地创建您自己的邮件类,从而使您的代码变得细小且可扩展。

相关文章