Configuring Emails in Laravel

Viewed 21103

I am trying to setup emails in my Laravel aplication, I have my env file something like this:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=noreply@xxx.com
MAIL_PASSWORD=xxx
MAIL_ENCRYPTION=tls

I tried according to the answer given in this question Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted

I followed the steps, enabled 2 step verification, then created app password and configured my .env file

Finally I did php artisan config:cache

Failed to authenticate on SMTP server with username "noreply@xxx.com" using 3 possible authenticators. Authenticator LOGIN returned Swift_TransportException: Expected response code 235 but got code "534", with message "534-5.7.14

Please help me out with this. Thanks.

5 Answers

Steps to configure Gmail/Google SMTP with Laravel

  1. .env file setup

     MAIL_DRIVER=smtp
     MAIL_HOST=smtp.googlemail.com
     MAIL_PORT=465
     MAIL_USERNAME=GMAIL_USERNAME
     MAIL_PASSWORD=GMAIL_PASSWORD
     MAIL_ENCRYPTION=ssl
    
  2. Allow Less Secure Apps

Go to Google Accounts > Security > Allow less secure apps.

  1. Allow new device, either allow new signing from google review notification from your mobile device or if that doesn't work. Login with the same gmail id and open below link, it will enable you to allow the recent login attempt. (only required once to authenticate our Laravel app)

https://www.google.com/accounts/DisplayUnlockCaptcha

P.S. - If you have 2 step verification enabled, then Create app password and use that instead of GMAIL_PASSWORD

Reference - https://support.google.com/mail/answer/7126229

Need to create new less secure gmail account for configuration Email. your email should not use in more than 3 projects.

If you can't solve this with all the answers above, go to your account setting https://myaccount.google.com/security turn on two-step verification and generate an app password, this way will definitely work.

You can use MAIL_PASSWORD=yourapppassword instead of gmail password like

MAIL_DRIVER=smtp
 MAIL_HOST=smtp.googlemail.com
 MAIL_PORT=465
 MAIL_USERNAME=GMAIL_USERNAME
 MAIL_PASSWORD=APP_PASSWORD
 MAIL_ENCRYPTION=ssl

If u are not created. Create a new one go to Google Account ,then security then u will app password.

Related