Dépanner l'e-mail sur une nouvelle installation de Discourse

Y a-t-il des caractères à éviter dans le mot de passe SMTP ? Si oui, la documentation pourrait le mentionner.

Mon mot de passe initial n’a pas fonctionné et a entraîné une erreur. J’ai changé le mot de passe (en modifiant app.yml) puis j’ai reconstruit l’application. Après cela, j’ai pu recevoir l’e-mail « Confirmez votre nouveau compte ».

Le caractère suspect dans le mot de passe d’origine était : ]

Pour le nouveau mot de passe, j’ai laissé Mailgun le générer pour moi.

1 « J'aime »

Salut Ted ! Bienvenue dans notre communauté ! :hugs:

Les caractères spéciaux comme ] sont probablement à éviter. Mais étant donné la réponse de Jay ci-dessus, j’aurais pensé que cela fonctionnerait, tout comme l’inclusion de %.

Aviez-vous des guillemets dans votre mot de passe, par hasard ? Je pense que \" est l’un de ceux qu’il est impossible d’utiliser car il encadre le mot de passe, à moins que vous ne modifiiez app.yml pour ajouter une échappatoire \\.

Si ce n’est pas la réponse, alors il est probable que nous devions mettre à jour ce sujet de documentation pour indiquer quels caractères spéciaux éviter ! Ou mettre à jour l’installateur pour ajouter un avertissement ?

2 « J'aime »

Sans regarder de plus près, je dirais de changer le mot de passe pour qu’il n’ait pas de caractères étranges ou de modifier app.yml manuellement et d’entourer le mot de passe de guillemets simples. discourse-setup est un outil assez rudimentaire qui n’est pas conçu pour toutes les situations.

1 « J'aime »

C’est ce que je recommanderais. Ce petit contretemps a probablement ajouté 30 minutes à mon installation.

Mieux encore : ajouter une validation de mot de passe à l’installation pour rejeter les mots de passe qui ne répondent pas aux critères.

2 « J'aime »

J’ai mis à jour l’OP pour indiquer explicitement que le mot de passe ne peut pas inclure de caractères spéciaux. Est-ce à peu près ça ?

Travaillons à intégrer tout autre conseil dans le guide et supprimons toutes ces réponses. En parcourant, je ne suis pas très clair sur beaucoup d’entre elles. Par exemple, la toute première réponse suggère qu’une reconstruction était nécessaire après la mise à jour des paramètres SMTP, ce qui contredit le guide.

2 « J'aime »

Suggestion d’amélioration de la documentation :

Lors de la configuration de SMTP avec un fournisseur externe (j’utilisais SendGrid), je ne recevais pas les e-mails d’inscription. L’exécution de discourse-doctor a identifié l’erreur : Raison : 550 L'adresse d'expéditeur ne correspond pas à une identité d'expéditeur vérifiée.

Bien que j’aie authentifié le domaine de premier niveau (example.com) pour l’envoi dans SendGrid, je n’avais pas encore authentifié le sous-domaine discourse (discourse.example.com), et SendGrid rejetait donc les appels API.

Bien que cela ne m’ait pris qu’environ 15 minutes à comprendre, je pense qu’il serait utile d’inclure un commentaire supplémentaire dans app.yml et le script d’installation qui clarifie cela afin de réduire les frictions pour les nouveaux utilisateurs installant Discourse à l’avenir. Une référence directe à la page de dépannage serait également utile.

Quelque chose comme :

# La plupart des fournisseurs SMTP exigeront un domaine authentifié ou une adresse e-mail authentifiée
# pour envoyer des e-mails. Veuillez vous assurer d'avoir authentifié votre domaine d'envoi
# (example.com), votre sous-domaine (discourse.example.com) et l'adresse e-mail `notifications`
# auprès de votre fournisseur SMTP avant d'enregistrer de nouveaux utilisateurs afin d'assurer la délivrabilité des e-mails.
#
# La commande `discourse-doctor` peut aider à tester votre configuration de messagerie.
# Voir : https://meta.discourse.org/t/troubleshoot-email-on-a-new-discourse-install
6 « J'aime »

Le port 587 ne fonctionne pas pour Mailgun, mais le port 2525 fonctionne ? J’ai changé le port à 2525 dans app.yml mais cela ne fonctionne toujours pas ?

Comment puis-je résoudre ce problème ?

Avez-vous détruit et redémarré le conteneur (ou reconstruit) après avoir modifié le port ?

1 « J'aime »

J’ai reconstruit après avoir changé le port. Dois-je détruire et redémarrer le conteneur ?

Juste pour information, depuis mars/avril 2025, DigitalOcean bloque les ports SMTP sur tous les droplets par défaut. Ils peuvent lever la restriction si vous déposez un ticket de support, mais cela semble être traité au cas par cas :

J’espère que cela évitera à d’autres de devenir fous à se demander pourquoi leurs e-mails n’étaient pas envoyés alors que tout semblait configuré correctement ! :sweat_smile:

2 « J'aime »

le port 25 fonctionnait en entrée il y a quelques jours, mais jamais en sortie

Je pense qu’utiliser le port 2525 pour les e-mails sortants aidera.

1 « J'aime »

Comment dois-je configurer mon droplet DigitalOcean et mon installation Discourse ? C’est la première fois que je le fais.

Regarde ici :slight_smile:

1 « J'aime »

Aucun e-mail n’est reçu pendant l’installation. Cependant, les outils de test ont envoyé un e-mail avec mes informations SMTP.

Le problème le plus courant est que Discourse utilise une adresse e-mail de notification que votre serveur smtp ne pourra pas envoyer.