Swift mailer de PHP: échec de l'authentification sur SMTP en utilisant 2 authentificateurs possibles

quand j'envoie un e-mail avec le Swift Mailer de PHP à ce serveur: smtp.exchange.example.com comme ceci:

// Load transport
$this->transport =
    Swift_SmtpTransport::newInstance(
       self::$config->hostname,
       self::$config->port
    )
    ->setUsername(self::$config->username)
    ->setPassword(self::$config->password)
    ;

// Load mailer
$this->mailer = Swift_Mailer::newInstance($this->transport);

// Initialize message
$this->message = Swift_Message::newInstance();

// From
$this->message->setFrom(self::$config->from);

// Set message etc. ...

// Send
$this->mailer->send($this->message);

j'ai une drôle d'erreur:

échec de l'authentification sur le serveur SMTP avec nom d'utilisateur "user@example.com" en utilisant 2 authentificateurs possibles

je suis sûr que les informations de connexion sont correctes.

23
demandé sur hakre 2010-08-23 16:14:06

13 réponses

cela peut être vieux mais quelqu'un peut obtenir de l'aide à travers cela. Moi aussi j'ai fait face au même problème et j'ai reçu un mail sur mon compte gmail disant que quelqu'un essaye de pirater votre compte à travers un client de messagerie ou un autre site. Puis j'ai cherché et j'ai trouvé que faire ci-dessous résoudrait ce problème.

https://accounts.google.com/UnlockCaptcha et déverrouillez votre compte pour y accéder par d'autres médias/sites.

mise à jour : 2015

vous pouvez aussi essayer ceci, allez à https://myaccount.google.com/security#connectedapps Au fond, vers la droite il y a une option "Autoriser le moins des applications sécurisées". Si il est ÉTEINT, allumez-le en faisant glisser le bouton.

29
répondu roneo 2015-11-03 10:43:53

j'ai eu le même problème, donc j'ai désactivé un paramètre sur mon login WHM root, qui est le suivant:

WHM > accueil > Configuration du serveur > paramétrage des modifications > restreindre la SMTP sortante à root, exim et mailman (FKA SMTP Tweak) [?]

7
répondu Mint 2018-01-30 17:29:09

j'ai vraiment le même problème, enfin, je l'ai résolu.

ce n'est pas le problème de Swift Mail. C'est le problème de Yaml parser. si votre mot de passe ne contient que les chiffres, le mot de passe renvoie finalement à swift pas le même.

swiftmailer:
    transport:  smtp
    encryption: ssl
    auth_mode:  login
    host:       smtp.gmail.com
    username:   your_username
    password:   61548921

vous devez le corriger avec des guillemets doubles mot de passe: "61548921"

6
répondu user777161 2013-04-25 19:04:50

je viens de recevoir la même erreur.

la chose étrange est que commenté les lignes de justificatifs

// ->setUsername(self::$config->username)
// ->setPassword(self::$config->password)

Et le problème a disparu.

je suis perplexe parce que le serveur de messagerie a vraiment besoin de ces informations d'identification.

4
répondu Sydwell 2013-12-27 16:12:58

j'ai essayé presque toutes les suggestions possibles mentionnées ici, mais pour moi le problème a été résolu après avoir changé "accès pour les applications moins sûres" pour activer dans mon onglet Google account security settings. Espérons que cela puisse être utile pour les autres !

2
répondu user3857499 2014-10-17 17:01:15

le serveur peut nécessiter une sorte de cryptage et une authentification sécurisée.

voir http://swiftmailer.org/docs/sending.html#encrypted-smtp

2
répondu VolkerK 2016-12-03 12:21:30

essayez de mettre le nom d'utilisateur en double citation "nom d'utilisateur", d'une façon ou d'une autre qui a corrigé pour moi.

1
répondu Ardian C. 2014-01-30 21:29:06

j'ai été confronté au même problème et résolu. Essayez de vous connecter manuellement à votre compte gmail en premier. Ce problème est dû à google a détecté votre compte gmail a été abuser. E. g envoyer beaucoup de courriels sur une courte période de temps.

0
répondu Toby D 2013-06-27 04:01:28

vous utilisez peut-être le mauvais nom d'utilisateur.

j'ai eu une erreur similaire. Assurez-vous que vous n'utilisez pas uppercase lors de la connexion au serveur.

Exemple: JacekPL@lala.pl

Si vous utilisez ->setUsername('JacekPL'), ce qui peut causer une erreur. Utilisez ->setUsername('jacekpl') à la place. Cela a résolu mon problème.

0
répondu Marek D. 2013-12-27 16:11:33

Vérifiez D'abord s'il y a un problème de connectivité et vous pouvez atteindre le serveur SMTP:

Dans le terminal tapez:

telnet servername portnumber 

si vous recevez la réponse 220, vous pouvez atteindre le serveur SMTP et il n'y a aucun problème de connectivité, mais si la connexion au serveur échoue, voyez ce qui ne va pas dans votre réseau.

si le serveur a besoin d'auth essayer de s'authentifier sur le serveur par nom d'utilisateur et mot de passe et voir si quelque chose va mal.

enfin voir si le serveur requiert le cryptage et si oui openssl et d'autres choses sont configurés correctement.

0
répondu pouya 2013-12-27 16:12:32

j'ai eu la même erreur même.

j'utilisais le compte gmail et le serveur SMTP de Google pour envoyer des e-mails. Le problème était dû au fait que le serveur SMTP refusait d'autoriser car il considérait mon hôte web (par l'intermédiaire duquel j'ai envoyé un e-mail) comme un intrus.

J'ai suivi le processus de Google pour identifier Mon Hébergeur Web comme une entité valide pour envoyer des e-mails via Mon compte et le problème a été résolu.

0
répondu Suraj 2013-12-27 16:13:47

si vous essayez d'envoyer du courrier de votre environnement local par exemple. XAMPP ou WAMP, cette erreur se produira à chaque fois, allez de l'avant et essayez le même code sur votre hébergement web ou quoi que vous utilisiez pour la production.

en outre, l'authentification en 2 étapes à partir de google peut être le problème.

0
répondu Jesus Adolfo Rodriguez 2015-04-26 23:55:46

C'est assez étrange d'envoyer des e-mails fonctionne à nouveau. Nous n'avons rien changé et l'animateur a dit qu'eux non plus. Nous pensons qu'un redémarrage du serveur. C'est étrange: S

-7
répondu VDVLeon 2010-08-25 12:17:28