Maison > développement back-end > tutoriel php > Pourquoi est-ce que j'obtiens un échec d'authentification lors de l'envoi d'e-mails via le serveur SMTP de Gmail depuis PHP ?

Pourquoi est-ce que j'obtiens un échec d'authentification lors de l'envoi d'e-mails via le serveur SMTP de Gmail depuis PHP ?

Patricia Arquette
Libérer: 2024-12-20 00:23:08
original
460 Les gens l'ont consulté

Why Am I Getting an Authentication Failure When Sending Emails via Gmail's SMTP Server from PHP?

Impossible d'envoyer un e-mail via le serveur SMTP de GMail ?

Lorsque vous essayez d'envoyer des e-mails via le serveur SMTP de GMail à partir d'une page PHP, vous pouvez rencontrer l'erreur :

échec d'authentification [SMTP : le serveur SMTP ne prend pas en charge l'authentification (code : 250, réponse : mx.google.com à votre service, [98.117.99.235] SIZE 35651584 8BITMIME STARTTLS ENHANCEDSTATUSCODES PIPELINING)]

Cette erreur se produit souvent lorsque le code PHP ne dispose pas des paramètres SSL corrects. Voici comment résoudre le problème :

Code PHP corrigé :

<br>// Bibliothèque de courrier Pear<br>require_once "Mail.php" ;</p>
<p>$de = '<[email protected]>';<br>$to = '<[email protected]>';<br>$subject = 'Salut !';<br>$body = "Salut,nnComment vont toi?";</p>
<p>$headers = array(</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">'From' => $from,
'To' => $to,
'Subject' => $subject
Copier après la connexion

);

$smtp = Mail::factory('smtp', array(

    'host' => 'ssl://smtp.gmail.com',
    'port' => '465',
    'auth' => true,
    'username' => '[email&#160;protected]',
    'password' => 'passwordxxx'
));
Copier après la connexion

$mail = $smtp-> send($to, $headers, $body);

if (PEAR::isError($mail)) {

echo('<p>' . $mail->getMessage() . '</p>');
Copier après la connexion

} autre {

echo('<p>Message successfully sent!</p>');
Copier après la connexion

}

Différences clés :

  • L'hôte inclut désormais ssl:// indiquant un connexion sécurisée.
  • Le port est remplacé par 465, qui est le port SSL standard.

En mettant en œuvre ces modifications, vous garantirez un cryptage SSL approprié et éviterez 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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal