Suche Rat zur Einrichtung der E-Mail-Zustellung für Discourse Multisite

Hallo zusammen,

nach einigen Wochen des Experimentierens freue ich mich, erfolgreich ein Multisite-Setup in einem einzigen Container (nach vielen Fehlschlägen) bereitgestellt zu haben. Dies war für mich eine unglaubliche Leistung, da ich mit sehr begrenzten Ressourcen arbeite (rund 1,34 GB Speicher für zwei Websites sind erstaunlich, was viel besser ist, als zwei separate Container zu betreiben).

Ich richte Gemeinschaften ein, um etwas Gutes in dieser Welt zu tun, aber leider kann ich mir keine sehr teuren Hosting-Dienste leisten – selbst 20 US-Dollar pro Monat sind für mich eine erhebliche Ausgabe. Ich bin entschlossen, dies mit den vorhandenen Ressourcen zum Laufen zu bringen, weshalb ich um Rat bitte.

Allerdings bin ich auf ein kleines Problem gestoßen, was die E-Mail-Zustellung für jede Subdomain betrifft. Soweit ich das verstanden habe, scheint es, dass native Unterstützung für unterschiedliche E-Mail-Adressen pro Website in einer Multisite-Konfiguration nicht verfügbar ist. Das erscheint mir seltsam, besonders da Discourse gehostete Instanzen wie xyz.discourse.group verwaltet und ich davon ausgehe, dass Sie nicht 2 GB Speicher pro Instanz zuweisen. Sicherlich nutzen Sie einen ähnlichen Multisite-Ansatz?

Meine Frage ist: Wie handhaben Sie die E-Mail-Zustellung für jede Subdomain?

Wenn ich zum Beispiel die Websites xyz1.domain.com und xyz2.domain.com habe, möchte ich, dass ausgehende E-Mails als notification@xyz1.domain.com bzw. notification@xyz2.domain.com erscheinen und nicht alles von einer generischen Adresse gesendet wird. Ich habe versucht, Postfix mit Header-Checks (z. B. X-Originating-Domain) zu konfigurieren, bin aber auf eine Wand gestoßen, da alle E-Mails von derselben Adresse stammen. Wäre die Nutzung von etwas wie dem List-Id-Header ein besserer Ansatz? Ich verstehe, dass dies vielleicht ein heikles Thema ist, vielleicht proprietäre Informationen, aber jede Hilfe wird geschätzt.

Ich vermute, ich denke zu kompliziert und es gibt eine einfachere Lösung, die ich übersehe. Wenn Sie mir mitteilen könnten, wie Sie dies erreichen (oder mich in die richtige Richtung weisen), wäre ich Ihnen unglaublich dankbar.

Vielen Dank im Voraus für Ihre Zeit und alle Erkenntnisse, die Sie mir anbieten können!

1 „Gefällt mir“

Das ist nicht korrekt. Woher hast du das?
Du kannst notification_email pro Instanz festlegen.

2 „Gefällt mir“

Die native Unterstützung für unterschiedliche E-Mail-Anmeldeinformationen pro Website ist nicht verfügbar.

2 „Gefällt mir“

Hallo nochmal,

Entschuldigen Sie die Verwirrung in meinem früheren Beitrag – mir ist klar, dass ich das Problem nicht richtig beschrieben habe. Lassen Sie mich das klarstellen.

Die Herausforderung, vor der ich stehe, betrifft die E-Mail-Zustellung in einer Multisite-Einrichtung, bei der nicht Subdomains, sondern völlig unterschiedliche Hauptdomains im Vordergrund stehen. Zum Beispiel versuche ich, Sites wie xyz1.domain1.com und xyz2.domain2.com innerhalb desselben Discourse-Containers zu konfigurieren.

Ich verstehe, dass Discourse es Ihnen erlaubt, eine einzige Benachrichtigungs-E-Mail in app.yml zu definieren, wie zum Beispiel:

DISCOURSE_SMTP_ADDRESS: smtp.domain1.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: noreply@domain1.com
DISCOURSE_SMTP_PASSWORD: password
DISCOURSE_SMTP_ENABLE_START_TLS: true

Dies funktioniert perfekt für die erste Instanz (xyz1.domain1.com). Wenn jedoch E-Mails von der zweiten Instanz (xyz2.domain2.com) gesendet werden, markieren E-Mail-Anbieter wie Gmail sie als nicht übereinstimmend, da die E-Mail-Header nicht mit der Domain xyz2.domain2.com übereinstimmen. Im Wesentlichen kann ich in einer einzigen Multisite-Einrichtung keine separaten SMTP-Konfigurationen für jede Domain definieren.

Hat jemand dieses Szenario erfolgreich bewältigt, bei dem jede Hauptdomain in einer Multisite-Einrichtung ihre eigenen, eindeutigen SMTP-Anmeldeinformationen verwendet (z. B. separate DISCOURSE_SMTP_*-Einstellungen pro Site)? Gibt es eine Problemumgehung, oder erfordert dies separate Container für jede Domain, um Nichtübereinstimmungen zu vermeiden?

Gibt es alternativ Best Practices oder Tools (z. B. Postfix-Tweaks, Verwendung von List-Id-Headern), die helfen könnten, das Problem der Nichtübereinstimmung zu lösen, ohne separate Container für jede Site zu benötigen?

Ich würde mich sehr über Einblicke oder Vorschläge freuen. Nochmals vielen Dank für Ihre Zeit und Unterstützung!

Obwohl dies wie eine Einschränkung von Discourse aussieht, da ein Multisite-Setup nur die Verwendung eines einzigen Kontos zum Senden erlaubt, ist dies tatsächlich eine Einschränkung Ihres E-Mail-Anbieters, der Ihnen nur erlaubt, eine einzige Absenderadresse unter Ihrem Konto zu verwenden.
Die Tatsache, dass der SMTP_USER_NAME wie eine E-Mail-Adresse aussieht, liegt daran, dass sie erzwungen haben, dass der From:-Header der von Ihnen gesendeten E-Mails derselbe sein muss (oder: umgeschrieben wird, um derselbe zu sein) wie der SMTP_USER_NAME.
Die E-Mail-Header werden von Discourse gesetzt, und wenn Sie einen E-Mail-Anbieter verwenden, der sie nicht anfasst und Ihnen erlaubt, mehrere Absenderadressen unter demselben Konto zu verwenden, funktioniert alles einwandfrei.

3 „Gefällt mir“

Ich verstehe, ich muss also im Grunde Postfix so konfigurieren, dass benutzerdefinierte Header-Prüfungen erstellt werden:

/^From:.+@example\.com/ REPLACE From: Your Name <yourname@example.com>

und das sollte es sein? DANKE!

Wenn Sie Ihre eigene Postfix-Installation verwenden, sehe ich keinen Grund, warum dies ein Problem darstellen sollte.

2 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.