Premier e-mail d'inscription non envoyé

Bonjour,

Je viens d’effectuer une installation fraîche de Discourse.

La première connexion m’a demandé de créer un identifiant et un mot de passe pour le compte administrateur et était censée m’envoyer un e-mail d’activation.

Cependant, je n’ai pas reçu cet e-mail d’activation (j’ai bien sûr vérifié le dossier spam), alors j’ai appelé le docteur et envoyé un message de test à moi-même comme demandé. Cet e-mail est arrivé immédiatement dans ma boîte de réception.

Je sais que je peux créer un compte administrateur depuis la ligne de commande, mais j’aimerais comprendre ce qui se passe, car cela pourrait être le même cas pour les futurs utilisateurs qui essaieront de s’inscrire.

Pouvez-vous m’aider ?

Cordialement.

Il y a deux choses qui ont pu mal se passer :

  • le courriel n’a pas été envoyé
  • le courriel a été envoyé, mais n’a pas été livré

Puisqu’il s’agit d’une nouvelle instance, le plus simple est de vérifier tous les journaux des courriels sortants depuis la console Rails :

discourse(prod) > EmailLog.all.pluck(:to_address, :email_type, :created_at, :smtp_transaction_response)

Si vous voyez quelque chose, vous saurez qu’il a au moins été transmis au serveur SMTP, ce qui marque la fin de la responsabilité de Discourse.

Si vous ne voyez rien, il est probable qu’il n’ait pas été envoyé. Vous pouvez alors trouver des journaux informatifs en vérifiant les chemins d’URL /logs et /sidekiq après vous être connecté en tant qu’administrateur.

On constate que le message de test a bien été envoyé (et je l’ai effectivement reçu) via ./discourse-doctor, mais il n’y a aucune trace des messages d’enregistrement :

discourse(prod)> EmailLog.all.pluck(:to_address, :email_type, :created_at, :smtp_transaction_response)
=> [["user@domain.org", "test_message", 2026-05-13 16:23:41.417177000 UTC +00:00, "250 2.0.0 Ok: queued as 4B4DDB0059A"]]

Nous trouvons quatre messages d’enregistrement dans le fichier production.log (j’ai en effet tenté de m’inscrire quatre fois). Cependant, ces messages d’enregistrement n’ont jamais été reçus ; je suppose donc qu’ils n’ont jamais été envoyés, même s’il n’y a aucune erreur ni aucun avertissement.
On remarque qu’il n’y a aucune trace du message de test qui a été envoyé et reçu avec succès dans ces journaux.

root@my-vps-app:/var/www/discourse/log# cat production.log | grep user
  Parameters: {"authenticity_token" => "ityyLIdjT7xvdxEd01LjMT08-xxxx", "email" => "user@domain.org", "username" => "admin", "password" => "[FILTERED]", "commit" => "Register"}
  Parameters: {"authenticity_token" => "tnDxYkOOwXYcv59Ez4t8vWPir-xxxx", "email" => "user@domain.org", "username" => "admin", "password" => "[FILTERED]", "commit" => "Register"}
  Parameters: {"authenticity_token" => "bvOwVYHS3N_UELipxVEG3L3LY-xxxx", "email" => "user@domain.org", "username" => "admin", "password" => "[FILTERED]", "commit" => "Register"}
  Parameters: {"authenticity_token" => "oo6GN-n7clGI5F1-uqzsZcadeP-xxxx", "email" => "user@domain.org", "username" => "admin", "password" => "[FILTERED]", "commit" => "Register"}

Les autres fichiers de journalisation sont vides :

root@my-vps-app:/var/www/discourse/log# cat production_errors.log 
root@my-vps-app:/var/www/discourse/log# cat sidekiq.log 
root@my-vps-app:/var/www/discourse/log# cat unicorn.stderr.log 
root@my-vps-app:/var/www/discourse/log# cat unicorn.stdout.log 

Les journaux Docker de l’application Discourse affichent quatre messages indiquant qu’il manque quelque chose (et nous avons bien quatre messages d’enregistrement qui ont échoué) :

root@my-vps:/var/discourse# docker logs app
...
I, [2026-05-13T16:14:30.769269 #3290]  INFO -- : worker=7 gen=0 pid=4295 registered
I, [2026-05-13T16:14:30.815178 #4295]  INFO -- : worker=7 gen=0 pid=4295 ready
X-Accel-Mapping header missing
X-Accel-Mapping header missing
X-Accel-Mapping header missing
X-Accel-Mapping header missing

Cela peut-il aider ?