J’héberge le serveur Discourse sur DigitalOcean, le domaine provient de PorkBun, le serveur de messagerie est MailGun.
Mon compte MailGun est activé et le domaine (discourse.mydomain.com) est vérifié pour être utilisé avec mg.mydomain.com. Tous les enregistrements DNS TXT sont en place.
J’ai suivi toutes les étapes de dépannage du fil de discussion ici à plusieurs reprises ; Troubleshoot email on a new Discourse install
Lorsque j’essaie d’exécuter discourse-doctor ou si j’exécute ./launcher enter app puis rake 'emails:test[mail@mg.mydomain.com]', j’obtiens l’erreur suivante :
======================================== ERREUR ========================================
ERREUR IMPRÉVUE
Net::SMTPAuthenticationError
====================================== SOLUTION =======================================
Ce n'est pas une erreur courante. Aucune solution recommandée n'existe !
Veuillez signaler le message d'erreur exact ci-dessus à https://meta.discourse.org/
(Et une solution, si vous en trouvez une !)
=======================================================================================
Quelque chose ne fonctionne pas sur Discourse, car je n’ai aucun problème à envoyer des e-mails manuellement. J’ai cherché sur Google et sur les forums ici pendant de nombreuses heures, sans solution pour l’instant. Des idées ?
Il y a un problème avec votre nom d’utilisateur/mot de passe. Il est possible que votre mot de passe contienne un caractère qui nécessite une échappement, comme une étoile ou une apostrophe, peut-être (il sera donc plus facile de changer le mot de passe pour ne pas inclure ce caractère).
le mot de passe ne contient aucun de ces caractères. En fait, c’est le mot de passe généré automatiquement par MailGun, et il ne contient que des lettres et des chiffres ainsi que quelques caractères ‘-’. Il est assez long.
C’était ma meilleure supposition. J’essaierais de générer un nouveau mot de passe et/ou de le copier-coller à nouveau. Il est extrêmement peu probable qu’il s’agisse d’un bug dans Discourse.
Je parierais que DISCOURSE_SMTP_USER_NAME est incorrect - mail n’est probablement pas suffisant pour que mailgun vous authentifie. Ce devrait probablement être mail@mg.mydomain.com
Je suppose que vous pensez que DISCOURSE_SMTP_DOMAIN est le domaine de l’utilisateur ? Il ne l’est pas - c’est le domaine EHLO. Vous n’avez presque certainement pas besoin de le définir.
Je viens de réaliser cela aussi, lorsque j’ai testé avec telnet, j’ai utilisé « mail@mg.mydomain.com » comme nom d’utilisateur et cela a fonctionné, je vais donc réessayer avec cela comme DISCOURSE_SMTP_USER_NAME.
Je suppose que vous pensez que DISCOURSE_SMTP_DOMAIN est le domaine de l’utilisateur ? Ce n’est pas le cas - c’est le domaine EHLO. Vous n’avez probablement pas besoin de le définir.
Je ne suis pas sûr de comprendre ce que cela signifie.
Pour MailGun, j’utilisais mg.mydomain.com, pour Discourse, j’utilisais discourse.mydomain.com. Je n’ai actuellement aucun enregistrement DNS pour mydomain.com, seulement pour le sous-domaine Discourse et les enregistrements TXT pour le DNS MailGun.