【问题标题】:Mail::send() returns zero and no errors, still no mail sentMail::send() 返回零且没有错误,仍然没有发送邮件
【发布时间】:2015-12-04 22:58:36
【问题描述】:

我正在尝试使用 L5.1 和 Gmail 帐户发送我的第一封电子邮件。我有两步验证,并且在我的 .env 文件中使用了特定的应用程序密码。当我尝试发送电子邮件时:

    $result =Mail::send('emails.contact', $request->all(), function($msg)
    {
        $msg->subject   =   'Mail from Contact Page';
        $msg->to        =   'contact@fakedomain.com';
    }); dd($result);

然后 $result 总是为零并且没有邮件被发送(我检查了垃圾邮件文件夹 1000 次)。我还尝试使用带有凭据的 mailtrap.io,但结果在浏览器和使用 Tinker 时仍然相同。 这是我的 .env 文件:

APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
DB_HOST=127.0.0.1
DB_DATABASE=pandora
DB_USERNAME=myDatabaseUser
DB_PASSWORD=myDatabasePassword

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=myUser@gmail.com
MAIL_PASSWORD=AppSpecificPassword
MAIL_ENCRYPTION=ssl

我还在 Gmail 设置中授权了该应用。 有什么想法吗?

【问题讨论】:

  • 请发布您的.env 文件。您确定您已正确配置您的 Gmail 设置(SMTP 主机、端口等)吗?
  • 邮件配置值看起来不错。如果在Mail::send() 之后运行dump(Mail::failures());,它会输出什么?
  • 更新配置后是否运行 php artisan config:cache。 .env 文件?
  • Mail::failures() 是一个空数组。我重新启动 Apache 并运行 php artisan config:cache 仍然没有错误,也没有发送电子邮件
  • 从我可以在 SwiftMailer(Laravel 用来发送邮件)的源代码中跟踪的内容来看,当过程中的任何一点抛出异常时,失败数组会被填充,该异常会被传递直到 Laravel 的 mailer class 为止,因此可以合理地认为邮件程序没有问题。您是否尝试过使用电子邮件客户端使用应用程序密码连接到该电子邮件地址?您是否还检查过您发送邮件的 Gmail 地址的“已发送”文件夹,以查看电子邮件是否存在?

标签: laravel laravel-5.1


【解决方案1】:

这是我的 .env 文件

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=asd@gmail.com
MAIL_PASSWORD=emailpassword
MAIL_ENCRYPTION=tls

Follow this

【讨论】:

  • 我将 MAIL_ENCRYPTION 更改为 tls(这是我能看到的唯一区别)并收到此消息:AbstractSmtpTransport.php 第 383 行中的 Swift_TransportException:预期响应代码 220 但得到代码“”,消息“”
【解决方案2】:

我在this post找到了答案

所以,我将 mi 代码更改为:

    $result = Mail::send('emails.contact',$request->all(), function($message) use ($request) {
        $message->from($request->email);
        $message->to('myAddress@gmail.com')
            ->subject($request->subject)
            ->replyTo($request->email);
    });

出于某种原因,From 始终是我的 L5.1 设置中配置的内容,但我可以接受。 感谢@bogdan您的时间和帮助

【讨论】:

    猜你喜欢
    • 2017-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-23
    • 1970-01-01
    • 2016-09-09
    • 1970-01-01
    相关资源
    最近更新 更多