2017-07-17 1 views
0

J'essaie d'envoyer des courriels de google, mais je ne peux pas le faire encore. J'ai fait tout ce que j'ai trouvé en cherchant à travers google mais ça ne marchera toujours pas.Laravel 5.4 envoyer un courriel avec gmail

Mon 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', 'blablabla'), 
], 
'encryption' => env('MAIL_ENCRYPTION', 'tls'), 
'username' => env('MAIL_USERNAME'), 
'password' => env('MAIL_PASSWORD'), 
'sendmail' => '/usr/sbin/sendmail -bs', 

mon .env:

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=mypassword 
MAIL_ENCRYPTION=tls 

J'ai aussi permis "Applications moins sécurisées" sur les paramètres de gmail.

Le Mail-Code fonctionne parfaitement, je l'ai déjà essayé sur mailtrap.io. Mais si je le change pour google je reçois seulement des erreurs.

Thats my code pour envoyer Mail:

\Mail::to('[email protected]')->send(new NewThread($thread)); 

Et c'est l'erreur:

(1/1) ErrorException

stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: 
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed 

que quelqu'un peut me aider?

+0

Jetez un oeil sur cette [question] (https: // github .com/PHPMailer/PHPMailer/issues/368) – Webinion

+0

merci pour ça! Cela m'a aidé. Je programme sur localhost et si une nouvelle chose fonctionne, je l'ai mis dans ma page Web en direct. Je ne peux pas envoyer de mails car je travaille sur localhost. J'ai utilisé le même code maintenant sur ma page Web en direct et cela a fonctionné parfaitement. Merci mec! – dwdawdawdaw

Répondre

2

Essayez ceci, cela fonctionne pour moi:

MAIL_PORT=465 
MAIL_ENCRYPTION="ssl" 

assurez-vous aussi générer un mot de passe de l'application si vous utilisez 2FA. Ne pas utiliser TLS ou SSL ensuite.

+1

cela fonctionne pour moi – rslhdyt

0

MAIL_ENCRYPTION=tls 

'encryption' => env('MAIL_ENCRYPTION', 'tls'), 

changer à la fois à:

MAIL_ENCRYPTION= 

'encryption' => env('MAIL_ENCRYPTION', ''), 

Ensuite, exécutez:

php artisan config:clear 

Cela devrait faire le travail