预期的响应代码250,但代码为“530”,消息“530-5.5.1需要验证

问题描述 投票:0回答:1

我正在尝试为注册用户发送电子邮件验证,但我收到以下错误:

预期的响应代码250但得到代码“530”,消息“需要530-5.5.1认证。了解更多信息\ r \ n 530 5.5.1 https://support.google.com/mail/?p=WantAuthError v11sm5345109pgt.0 - gsmtp \ r \ n

我已经尝试了所有可能的方法,启用“不太安全”和其他指令但不理解错误。请帮我解决问题。

我的.env文件是:

我的控制器:

我的mail.php:

'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.gmail.com'),
'port' => env('MAIL_PORT', 587),
'from' => ['address' => env('MAIL_FROM_ADDRESS', '[email protected]'),
        'name' => env('MAIL_FROM_NAME', 'Example'), ],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('[email protected]'),
'password' => env('*******'),
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => FALSE,
php laravel email
1个回答
1
投票

问题在于你的mail.php,请使用此代码而不是你的代码

...
'driver' => env('MAIL_DRIVER', 'smtp'),
'host'   => env('MAIL_HOST', 'smtp.gmail.com'),
'port'   => env('MAIL_PORT', 587),
'from'   => [
   'address' => env('MAIL_FROM_ADDRESS', '[email protected]'),
   'name' => env('MAIL_FROM_NAME', 'Example')
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME', '[email protected]'),
'password' => env('MAIL_PASSWORD', '*******'),
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => FALSE,
...

编辑:env()辅助方法的第一个参数是name of environment variable,如果找不到该变量,则第二个参数是后备值。之所以不起作用,是因为Laravel无法在environment[email protected]这个名字下找到一个*******变量。

© www.soinside.com 2019 - 2024. All rights reserved.