【问题标题】:Can't send SMTP mail with no errors in Laravel 5.8.16无法在 Laravel 5.8.16 中发送没有错误的 SMTP 邮件
【发布时间】:2019-07-27 21:35:03
【问题描述】:

我在发送邮件时遇到问题。点击“发送”按钮后,邮件没有发送,但没有错误。

.env

MAIL_DRIVER=smtp
MAIL_HOST=mail.ensartkm.com
MAIL_PORT=587
MAIL_USERNAME=xxxxx@xxxxxx.com
MAIL_PASSWORD=xxxxxx
MAIL_ENCRYPTION=false

MAIL_ADMIN=ensar@ensartkm.com

我发送邮件的代码:

$data = $request->all();
$result = Mail::to(env('MAIL_ADMIN'))
    ->send(new ContactFormMail($data['name'],$data['email']));

ContactFormMail 是我的控制器,代码如下:

class ContactFormMail extends Mailable
{
    use Queueable, SerializesModels;

    protected $name;
    protected $email;

    public function __construct($name, $email)
    {
        $this->name = $name;
        $this->email = $email;
    }

    public function build()
    {
        return $this->markdown('emails.contact-form')
            ->with([
                'name' => $this->name,
                'email' => $this->email,
            ])
            ->subject('New mail');
    }
}

【问题讨论】:

  • 您检查过storage/logs/laravel.log 看看有哪些错误(如果有的话)?
  • 没有任何关于那里邮寄的日志

标签: php laravel mailing


【解决方案1】:

有可能是服务器发送了静默错误或失败消息,但没有失败响应代码。

我会尝试发送一封启用了 swiftmailer 的调试日志记录的电子邮件,方法是使用 swiftmailer 创建一个简单的测试脚本,或者使用下面的包,它将调试信息记录到 laravel 的日志中:

https://github.com/oprudkyi/laravel-mail-logger

【讨论】:

  • 什么意思?
猜你喜欢
  • 2018-01-18
  • 2020-12-08
  • 2012-09-29
  • 2016-08-24
  • 2021-03-28
  • 2021-05-30
  • 2016-11-15
  • 2013-10-10
  • 2022-01-21
相关资源
最近更新 更多