Notifiche incompatibili con il reply by email

Ho letto attentamente le guide sulle email a questo link Email delivery configuration checklist e quelle successive.

Ho studiato questo link How to setup "Reply by email address" now that it must be different from the "Notification email", e questo Notification email cannot be the same as reply by email.

Tutti gli indirizzi che utilizzo sul forum possono inviare o ricevere email tramite un client di posta come Thunderbird o Claws Mail.

Ci sono quattro indirizzi diversi, solo i primi tre sono interessati da questo problema:

  • quello dell’amministrazione in app.yml: admin@
  • quello delle notifiche in app.yml: forum@
  • quello del reply-to: reply@
  • e quello della pubblicazione via email: questions@
  1. Le notifiche ottenute tramite lo stato della mailing list del forum vengono inviate correttamente. E il test di invio dalla pagina admin/email/server-settings va a buon fine.

  2. Se imposto la risposta via email, questa funzionalità è correttamente operativa ma le notifiche smettono di funzionare.
    Il precedente test di invio fallisce con lo stato “501 5.5.4 You are not allowed to send from this address.”

  3. Se disattivo la risposta via email, il test torna a funzionare correttamente.

Qualcuno può spiegarmi perché ricevo questo errore e come configurare correttamente sia le notifiche che il “reply by email”?

2 Mi Piace

Questo messaggio proviene dal tuo servizio di invio di posta elettronica. È piuttosto chiaro.

Devi inviare da un indirizzo email che il tuo server smtp può utilizzare. È come se fosse impostato per inviare da example.com e tu ora stai inviando da forum.example.com

4 Mi Piace

Perché allora in un caso il test di invio è OK e diventa KO quando imposto il “reply by email”? Preciso che non modifico nulla nella configurazione delle notifiche.

Cosa succede a livello di Discourse nella preparazione delle email?

1 Mi Piace

Il problema proviene effettivamente da Discourse.

Affinando la configurazione dei log, vedo che il messaggio pubblicato è effettivamente autenticato dal giusto indirizzo:

2026-02-25T12:54:24Z TRACE Data store
iteration operation (store.data-iterate) elapsed = 0ms
<3.14, remotePort = 47104, accountName =
“forum.cagut@domain.tld”, accountId = 31

Ma diventa

2026-02-25T12:54:24Z ^\[\[35;1mTRACE ^\[\[37;1mRaw SMTP output sent
(smtp.raw-output) listenerId = “submissions”, localPort = 465, remoteIp
= 51.178.53.14, ^>
<53.14, remotePort = 47104, size = 73,
contents = “MAIL
FROM:\u003creply.cagut+verp-8bf40c695b1f612e555cf25f3c14c9b8@domain.tld\u003e\\r\\n”

Il server di posta non ha alcuna conoscenza di questo formato di indirizzo.

1 Mi Piace

Quel numero magico è il modo in cui Discourse collega le risposte all’argomento.

Avrai bisogno di un altro server di posta (o di modificare quello attuale per supportare gli indirizzi +) oppure di non utilizzare la risposta via email.

Sì, so che è un identificatore per utilizzare il “reply by email”.

Quindi il test di invio delle email non funziona quando il “reply…” è attivo. La documentazione non lo specifica e l’errore proviene effettivamente da Discourse e non dal server di posta, che era la vostra prima risposta!

Inoltre, come può un indirizzo “from” avere questo “magic number”? Questo formato di indirizzo è utilizzato negli header.
La tua risposta non è affatto una risposta.

Questa trasformazione del “From” non deve essere eseguita.

E dire che si deve fare a meno di una funzionalità prevista dal software è strano…

Domani farò altri studi.

1 Mi Piace

Non è una trasformazione dell’intestazione di per sé: quando la risposta via email è abilitata, Discourse invia email con l’envelope-from impostato sul pattern dell’indirizzo reply_by_email_address e imposta anche reply-to: se l’email è a cui si può rispondere.

Ad esempio, qui su meta è:

notification_email: notifications@meta.discoursemail.com
reply_by_email_address: incoming+%{reply_key}@meta.discoursemail.com

che si traduce in:

Return-Path: <incoming+verp-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>
From: Person <notifications@meta.discoursemail.com>
Reply-To: Person <incoming+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>

L’email di notifica va nell’intestazione From, e reply_by_email_address va nell’envelope-from. Abbiamo configurato il nostro server di posta in entrata in modo che qualsiasi cosa indirizzata a …@meta.discoursemail.com venga consegnata a meta, il che fa funzionare questo sistema.

Ma se il tuo server di posta non ti permette di usare questo envelope-from, otterrai l’errore che stai segnalando.

Questo errore proviene quasi certamente dal server di posta. Discourse potrebbe riportartelo, ma è il server di posta a generarlo.

2 Mi Piace