【问题标题】:Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 250 but got code "535",AbstractSmtpTransport.php 第 383 行中的 Swift_TransportException:预期响应代码为 250,但得到代码“535”,
【发布时间】:2016-04-11 08:57:01
【问题描述】:

这是引发我的错误:

AbstractSmtpTransport.php 第 383 行中的 Swift_TransportException: 预期响应代码 250,但得到代码“535”,消息“535-5.7.8 用户名和密码不被接受。了解更多信息,请访问 535 5.7.8 https://support.google.com/mail/answer/14257 px4sm26723732oec.7 - gsmtp "

我在我的帐户中启用了“允许安全性较低的应用”,但我没有启用两步验证。 是的,我也已经进行了“显示解锁验证码”配置,但没有任何改变。 请有人帮助我。

这是我的 .env 代码:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME="my mail"
MAIL_PASSWORD="my password"
MAIL_ENCRYPTION=tls

这是我的 mail.php 代码:

return [
    'driver' => env('MAIL_DRIVER', 'smtp'),
    'host' => env('MAIL_HOST', 'smtp.gmail.com'),
    'port' => env('MAIL_PORT', 587),
    'from' => ['address' => "my mail", 'name' => null],
    'encryption' => env('MAIL_ENCRYPTION', 'tls'),
    'username' => env('MAIL_USERNAME'),
    'password' => env('my password'),
    'sendmail' => '/usr/sbin/sendmail -bs',
    'pretend' => false,
];

【问题讨论】:

    标签: gmail laravel-5.1 sendmail


    【解决方案1】:

    您是在使用 Homestead 还是在 Live Server 上工作。对于它们,您可以按照我的步骤进行操作。 您可以使用 Guzzle 和 MailGun 测试外发电子邮件是否正在您的服务器中发送。 您必须通过以下链接设置几个步骤来集成 Guzzle 和 MailGun:https://laravel.com/docs/5.1/mail。我也首先遇到了相同的错误,我已经对此进行了测试,现在它对我来说很好。 邮件部分的 .env 文件将如下所示。

    MAIL_DRIVER=mailgun
    MAIL_HOST=smtp.mailgun.org
    MAIL_PORT=2525
    MAIL_USERNAME="YOUR MAIL GUN USER NAME"
    MAIL_PASSWORD="YOUR MAIL GUN PASSWORD"
    MAIL_ENCRYPTION="YOUR NEEDED ENCRYPTION TYPE" (Eg. tls/ssl)
    MAIL_FROM="FROM MAIL ID"
    MAIL_NAME="YOUR NAME AS IN THE FROM MAIL ID"
    MAILGUN_DOMAIN="YOUR MAIL GUN DOMAIN FOR THAT PROJECT"
    MAILGUN_SECRET="YOUR MAIL GUN SECRET KEY"
    

    端口:2525 用于 Homestead,您可以根据自己的加密方法使用 465/587。 确保您的 config.php 文件对您在 .env 中提供的所有输入都具有 env() 函数

    【讨论】:

    • 我在宅基地上工作,实际上它之前工作过并发送了电子邮件,但后来我丢失了文件 mail.php,我不得不重新配置它停止工作。 mail.php 就像我之前写的一样,看起来还不错。好吧,我将尝试更改端口,然后使用 mailgun,谢谢,我会告诉你它是否有效。
    • 问题解决了,首先我没有把我的邮件放在 mail.php 文件上的用户名中,然后给我抛出其他错误“需要身份验证”,然后我转到这个帖子 stackoverflow.com/questions/32693528/… 并解决它.为子孙后代。 :)
    【解决方案2】:

    遇到同样的问题,在我的情况下,它需要旧凭据,而不是从 .env 文件中读取,因此使用 php artisan cmd 清除缓存和配置,然后运行正常。

    php artisan config:clear
    php artisan cache:clear
    

    【讨论】:

      【解决方案3】:

      我今天的情况几乎相同 --- 不同的是我的 php/swiftmailer 几天前工作了,我的 G Suite 帐户和 php 代码没有改变,但今天没有。尝试了一些我从在线搜索和 stackoverflow.com 获得的方法,但都不起作用。最后,有效的解决方案是转到 G Suite 管理控制台 -> 安全 -> 基本设置 -> 不太安全的应用程序 -> 选择第三个:强制访问不太安全的应用程序。在此之后,我的发送邮件 php 代码再次工作。希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-23
        • 2017-07-22
        • 2018-04-03
        • 2021-02-02
        • 1970-01-01
        • 2017-10-24
        • 2019-08-12
        • 2015-09-16
        相关资源
        最近更新 更多