J'essaie d'envoyer un simple e-mail à partir de mon application laravel 8 à l'aide du serveur SMTP de Google, mais cela ne fonctionne pas, j'obtiens cette erreur:
MAIL_MAILER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=587 MAIL_USERNAME=direction@gmail.com MAIL_PASSWORD=password MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=null MAIL_FROM_NAME="${APP_NAME}"
ou
stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
J'ai trouvé de nombreux articles SO concernant ce problème mais aucun d'entre eux n'a fonctionné pour moi, voici une liste de ce que j'ai essayé:
smtp.googlemail.com
et smtp.gmail.com
MAIL_ENCRYPTION=tls
et ssl
'stmp'
en 'sendmail'
Y a-t-il autre chose que je peux essayer?
Voici ma configuration de messagerie, bien que j'en ai essayé plusieurs versions:
Swift_TransportException Connection could not be established with host smtp.gmail.com :stream_socket_client(): SSL:
3 Réponses :
Essayez ceci et ajoutez la variable d'environnement supplémentaire du mode auth
'smtp' => [ 'transport' => 'smtp', 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), 'port' => env('MAIL_PORT', 587), 'encryption' => env('MAIL_ENCRYPTION', 'tls'), 'username' => env('MAIL_USERNAME'), 'password' => env('MAIL_PASSWORD'), 'timeout' => null, 'auth_mode' => env('MAIL_AUTH_MODE'), ],
Maintenant, allez dans config/mail.php
et changer
'smtp' => [ 'transport' => 'smtp', 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), 'port' => env('MAIL_PORT', 587), 'encryption' => env('MAIL_ENCRYPTION', 'tls'), 'username' => env('MAIL_USERNAME'), 'password' => env('MAIL_PASSWORD'), 'timeout' => null, 'auth_mode' => null, ],
à
MAIL_MAILER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=587 MAIL_USERNAME=direction@gmail.com MAIL_PASSWORD=password MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=null MAIL_FROM_NAME="${APP_NAME}" MAIL_AUTH_MODE=login
Il échoue toujours ... lance le deuxième message d'erreur affiché dans la question
Aléatoire. Votre environnement a-t-il la date et l'heure correctes pour définir le fuseau horaire dans lequel vous vous trouvez?
Ce n'était pas le cas, mais je l'ai changé et échoue toujours.
Enfin, c'était un problème avec Windows. J'ai trouvé des articles indiquant que Windows ne peut tout simplement pas exécuter certains services de messagerie. J'ai essayé exactement le même code sur un ordinateur avec Ubuntu et cela a fonctionné au premier essai.
J'ai eu le même problème, je viens de désactiver mon antivirus (Avast / windows 10) et son fonctionnement.
vérifiez ceci https://stackoverflow.com/questions/30556773/how-to-fix-stre am-socket-enable-cry pto-ssl-operation-fa iled-with-code-1
Pouvez-vous envoyer la configuration de courrier s'il vous plaît. (Omettez simplement les mots de passe, etc.)
@ChrisTownsend bien sûr, je l'ai ajouté à la question