猿问

即使更改了不太安全的应用程序,laravel 5 smtp 邮件也不会发送

我已经更改了gmail 不太安全的应用程序(在 gmail 设置)和我.env的如下


MAIL_DRIVER=smtp

MAIL_ADDRESS=rejoanul.alam@gmail.com

MAIL_HOST=smtp.gmail.com

MAIL_PORT=587

MAIL_PASSWORD=myPass

MAIL_ENCRYPTION=tls

之后我的控制器如下


    try {

      Mail::send('admin.users.email', $requestData, function ($message) use ($request) {

      $message->from(env('MAIL_ADDRESS'), 'Rejoan');

      $message->to(trim($request->input('email')))->subject('Account Updated');

     });

    }catch (\Exception $e) {

     echo $e->getMessage();return;

    }

每条领带都显示以下错误


预期响应代码 250,但得到代码“535”,消息“535-5.7.8 用户名和密码不 > 接受。在 535 5.7.8 https://support.google.com/mail/?p=BadCredentials t11sm18420889pjo了解更多信息.21 - gsmtp"


我的 laravel 版本是 5.2,我做错了什么。还尝试使用应用密码选项启用两步验证,但未成功。


是guzzle相关的问题吗?我的作曲家展示"guzzlehttp/guzzle": "^6.5"


当我尝试使用PHPMailer图书馆然后工作但 laravel 邮件不起作用


宝慕林4294392
浏览 122回答 2
2回答

素胚勾勒不出你

错误清楚地表明用户名和密码未>接受“BadCredentials”让我猜猜你的 MAIL_PASSWORD 有一个美元($)或哈希(#)所以在你.env使用双引号MAIL_ADDRESS=rejoanul.alam@gmail.comMAIL_HOST=smtp.gmail.comMAIL_PORT=587MAIL_PASSWORD="my$Pass#"如上...

繁花不似锦

经过长时间的研究,发现 laravel 邮件无法使用tls但ssl很好。所以在如下更改设置后它可以工作 .env文件MAIL_DRIVER=smtpMAIL_ADDRESS=rejoanul.alam@gmail.comMAIL_HOST=smtp.googlemail.comMAIL_PORT=465MAIL_PASSWORD=myPass (this should be app password)MAIL_ENCRYPTION=ssl通常您的电子邮件密码将不起作用。从这里生成应用密码https://security.google.com/settings/security/apppasswords 注意:如果不启用两步验证,应用密码可能不起作用
随时随地看视频慕课网APP
我要回答