I am trying to send an email in laravel application.
Here is my .env
file:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=ehsan.sani91@gmail.com
MAIL_PASSWORD=**********
MAIL_ENCRYPTION=tls
And here is the Mail::send
method:
Mail::send('email', ['name' => "EE"], function($m){
$m->to('ee@dx.com', 'Malik')->subject('Subjet of the email');
});
And here is the error:
Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 250 but got code "530", with message "530 5.7.0 Must issue a STARTTLS command first. s16sm7748968wib.16 - gsmtp"
Any help?
Well, I got it. Infact the email was not authenticated because that email required a mobile phone authentication after login. changing to other email address that required just login credentials, it worked.
.env
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=youremail@host.com
MAIL_PASSWORD=yourpassword
MAIL_ENCRYPTION=tls
GMail SMTP requires encryption. Try changing setting as following.
MAIL_PORT=465
MAIL_ENCRYPTION=ssl
I made the following mistake:
I did not actually include the
'encryption' => env('MAIL_ENCRYPTION'),
to the array return in mail.php. I did include my host, port, username and password in the mail.php but not the encryption method (the encryption method I only included in the .env file), so trying out these mentioned solutions did bring a change in the error messages outcome, created a bigger confusion, but none solved the problem. Hope this helps someone!
If the above comments do not work, try clearing the cache:
php artisan cache:clear
php artisan config:clear
maybe port error , you can look this web laravel or lumen send email