Discourse si connette al server SMTP ma non riesce a inviare email tramite esso

Non riesco a ricevere la prima email di registrazione utente:

Discourse doctor riporta:
Connessione al server SMTP riuscita.
Invio della mail fallito.

Tuttavia:
Il comando Telnet su mail.domain.com porta 587 funziona e il comando EHLO al mailserver funziona.

Come posso risolvere? Qualsiasi aiuto sarebbe molto apprezzato.

Potresti consultare i log del server di posta. Qualsiasi sia l’errore, non è qualcosa che Discourse-doctor comprende.

Dovrai cercare su Google come configurare exim4.

Da 7. The default configuration file

Il congelamento si verifica quando un messaggio di rimbalzo incontra un errore permanente perché l’indirizzo del mittente del messaggio originale che ha causato il rimbalzo non è valido, quindi il rimbalzo non può essere consegnato.

Il mio parere è che tu debba modificare l’indirizzo email di notifica o configurare exim per utilizzare il tuo sottodominio

Hai dimenticato di ricostruire il tuo container?

Comunque, puoi verificare il tuo container eseguendo:

docker exec -it app rails c

Quindi, dalla console di Rails:

[1] pry(main)>ENV

Puoi visualizzare facilmente tutte le tue variabili d’ambiente relative a SMTP.

Exim4 è stato testato per verificare l’invio e la ricezione delle email.
Discourse è stato ricompilato con discourse-setup, utilizzando tutte le credenziali corrette:

Hostname      : forum domainname com
Email         : user@test com
SMTP address  : mail forum domainname com
SMTP port     : 587
SMTP username : postmaster@forum domainname com
SMTP password : password

Successivamente, è stato eseguito discourse-doctor per verificare se Discourse può inviare email dal server di posta locale exim4.

Discourse-doctor riporta:
“Connessione al server SMTP riuscita.”
“Invio dell’email fallito.”

Tuttavia, non ci sono errori nel log di exim4.

Perché l’invio dell’email fallisce?
È questo un problema comune?

Si noti che l’indirizzo SMTP è: mail forum domainname com,
dovrebbe avere “mail” all’inizio?

Discourse-doctor indica che Discourse si connette a:
mail forum domainname com,
ma Discourse non invia l’email.

Il mio indizio è una discrepanza tra il nome host del tuo forum e il nome di dominio che il server di posta invierà.

Qual è il nome host che Discourse utilizza per inviare le email?
Usa forum.somedomain.com?
o
Usa mail.forum.somedomain.com?

Di default è email@forum.somedomain.com, se ricordo bene.

Questo crea confusione in alcune persone perchĂŠ si aspettano che sia

email@somedomain.com