首页 > 解决方案 > 无法使用 3 个可能的身份验证器在用户名“hello@gmail.com”的 SMTP 服务器上进行身份验证

问题描述

当我运行代码时,我收到错误“无法使用 3 个可能的身份验证器在用户名“hello@gmail.com”的 SMTP 服务器上进行身份验证。身份验证器 CRAM-MD5 返回预期响应代码 235,但得到代码“535”,消息“535 5.7” .0 无效的登录名或密码“。Authenticator LOGIN 返回了预期的响应代码 250,但得到了一个空响应。Authenticator PLAIN 返回了预期的响应代码 250,但得到了一个空响应。”

配置/邮件.php

return [
    'driver' => env('MAIL_DRIVER', 'smtp'),
    'host' => env('MAIL_HOST', 'smtp.mailtrap.io'),
    'port' => env('MAIL_PORT', 2525),
    'from' => [
        'address' => env('MAIL_FROM_ADDRESS', 'hello@gmail.com'),
        'name' => env('MAIL_FROM_NAME', 'Hello'),
    ],

    'encryption' => env('MAIL_ENCRYPTION', 'tls'),
    'username' => env('MAIL_USERNAME'),
    'password' => env('MAIL_PASSWORD'),
    'sendmail' => '/usr/sbin/sendmail -bs',

    'markdown' => [
        'theme' => 'default',

        'paths' => [
            resource_path('views/vendor/mail'),
        ],
    ],

    'log_channel' => env('MAIL_LOG_CHANNEL'),
];

.env 文件是

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=hello@gmail.com
MAIL_PASSWORD=****
MAIL_ENCRYPTION=tls

标签: laravel

解决方案


在你的环境中这样做:

MAIL_DRIVER=sendmail
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=***
MAIL_PASSWORD=***
MAIL_ENCRYPTION=tls

推荐阅读