Alle Adressen, die ich im Forum verwende, können E-Mails über einen E-Mail-Client wie Thunderbird oder Claws Mail senden oder empfangen.
Es gibt vier verschiedene Adressen, von denen nur die ersten drei von diesem Thema betroffen sind:
die der Administration in app.yml: admin@
die der Benachrichtigungen in app.yml: forum@
die für reply-to: reply@
und die für das E-Mail-Posting: questions@
Die Benachrichtigungen, die über den Mailinglisten-Status des Forums empfangen werden, werden korrekt gesendet. Und der Testversand auf der Seite admin/email/server-settings verläuft gut.
Wenn ich die Antwort per E-Mail einrichte, funktioniert diese Funktion korrekt, aber die Benachrichtigungen funktionieren nicht mehr.
Der vorherige Testversand schlägt dann mit dem Status „501 5.5.4 You are not allowed to send from this address.“ fehl.
Wenn ich die Antwort per E-Mail deaktiviere, funktioniert der Test wieder korrekt.
Wer kann mir erklären, warum ich diesen Fehler habe und wie ich sowohl die Benachrichtigungen als auch das „Reply by Email“ korrekt einrichten kann?
Diese Nachricht stammt von Ihrem E-Mail-Versanddienst. Sie ist ziemlich eindeutig.
Sie müssen von einer E-Mail-Adresse senden, die Ihr SMTP-Server verwenden kann. Es ist so, als ob es so eingestellt ist, dass von example.com gesendet wird, Sie aber jetzt von forum.example.com senden.
Warum ist dann der Testversand in einem Fall OK und im anderen Fall KO, wenn ich die Funktion „Antworten per E-Mail“ einrichte? Ich betone, dass ich nichts an der Konfiguration der Benachrichtigungen ändere.
Was passiert auf Discourse-Ebene bei der Vorbereitung der E-Mails?
Ja, ich weiß, dass dies eine Kennung für die Verwendung von „Antworten per E-Mail“ ist.
Der Test des E-Mail-Versands funktioniert also nicht, wenn „Antworten per E-Mail“ aktiviert ist. Die Dokumentation erwähnt dies nicht, und der Fehler liegt tatsächlich bei Discourse und nicht beim Mailserver, was Ihre erste Antwort war!
Es handelt sich nicht um eine Umwandlung des Headers an sich – wenn „Reply-by-Email“ aktiviert ist, sendet Discourse E-Mails, wobei die „Envelope-From“-Adresse auf das Muster der Adresse reply_by_email_address gesetzt wird, und setzt auch reply-to:, falls die E-Mail beantwortbar ist.
Return-Path: <incoming+verp-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>
From: Person <notifications@meta.discoursemail.com>
Reply-To: Person <incoming+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>
Die Benachrichtigungs-E-Mail landet im From-Header, und reply_by_email_address landet in der Envelope-From. Wir haben unseren eingehenden Mail-Server so konfiguriert, dass alles, was an …@meta.discoursemail.com adressiert ist, an Meta zugestellt wird, was dies ermöglicht.
Wenn Ihr E-Mail-Server Ihnen jedoch nicht erlaubt, diese Envelope-From zu verwenden, erhalten Sie den von Ihnen gemeldeten Fehler.
Dieser Fehler kommt mit ziemlicher Sicherheit vom Mailserver. Discourse meldet ihn Ihnen möglicherweise, aber der Mailserver erzeugt ihn.