Maison >développement back-end >tutoriel php >Pourquoi mon e-mail PHP envoyé à Gmail échoue-t-il à l'authentification et comment puis-je y remédier ?
Correction d'un échec d'authentification lors de l'envoi d'un e-mail via le serveur SMTP GMail à partir de PHP
Vous pouvez rencontrer l'erreur d'authentification suivante lors de la tentative d'envoi d'un e-mail en utilisant votre script PHP :
authentication failure [SMTP: SMTP server does no support authentication (code: 250, response: mx.google.com at your service, [98.117.99.235] SIZE 35651584 8BITMIME STARTTLS ENHANCEDSTATUSCODES PIPELINING)]
Cette erreur se produit généralement lorsque la configuration SMTP spécifiée est incorrecte ou incomplète. Pour résoudre ce problème, vérifiez votre configuration et ajustez-la comme suit :
require_once "Mail.php"; $from = "Sandra Sender <[email protected]>"; $to = "Ramona Recipient <[email protected]>"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?"; $host = "ssl://smtp.gmail.com"; $port = "465"; $username = "[email protected]"; $password = "testtest"; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port' => $port, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); if (PEAR::isError($mail)) { echo("<p>" . $mail->getMessage() . "</p>"); } else { echo("<p>Message successfully sent!</p>"); }
En spécifiant ssl:// dans la configuration de l'hôte, vous établissez une connexion SSL sécurisée au serveur SMTP GMail. De plus, vous devez spécifier le bon port pour SSL, qui est 465.
Assurez-vous que votre nom d'utilisateur et votre mot de passe sont corrects. Il doit s'agir de vos informations d'identification GMail.
Une fois que vous avez ajusté votre configuration, votre script PHP devrait pouvoir envoyer des e-mails via le serveur SMTP GMail sans rencontrer l'erreur d'échec d'authentification.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!