Zwei Domains, bedingte Weiterleitung

Liebe Discourse-Experten!

Wir betreiben seit drei Jahren ein Discourse-Forum (DOMAIN1). Nun möchten wir den Diskussionsumfang erweitern und DOMAIN2 hinzufügen. Dank dieses Beitrags haben wir es geschafft, beide Domains mit Let’s Encrypt aktiv zu schalten. Beide Domains bleiben aktiv, was nach Schritt 1 in diesem Beitrag funktioniert hat. Die zweite Domain wird auf den Hauptdomainnamen umgeleitet, was gut ist.

Ein Teil der Umstellung besteht darin, alle bestehenden Kategorien in eine neue Hauptkategorie zu verschieben.

DOMAIN2 wird zur Haupt-Discourse-Domain, während DOMAIN1 weiterhin verlinkt bleibt, damit externe Links zu Beiträgen weiterhin funktionieren.

Hier ist die Frage: Wie können wir eine Umleitung einrichten, wenn eine „normale

1 „Gefällt mir“

Du wirst es schwer haben: Eine einzelne Discourse-Instanz kann nicht an mehreren URLs existieren; und die Weiterleitung von Permalinks funktioniert nicht für bestehende Routen wie die Themenansicht.

4 „Gefällt mir“

Du sagst also, es gibt keine einfache Möglichkeit, Folgendes umzusetzen?

(1) Zu domain1.com gehen, wo Discourse läuft (mit dem Hauptnamen domain1.com – funktioniert)
(2) Zu domain2.com gehen, und es wird zu domain1.com/c/example/18 weitergeleitet (das wollen wir auch)
(3) Zu domain2.com/t/topic/1 gehen, und es wird entweder domain1.com/t/topic/1 oder domain2.com/t/topic/1 angezeigt (derzeit funktioniert das)

Wir wechseln gerade und möchten, dass nur die Wurzel von domain2.com zu einer Kategorie weiterleitet. Gibt es eine Art URL-Umschreibung, die das bewerkstelligen kann?

1 „Gefällt mir“

Wenn domain2 nur Weiterleitungsregeln bereitstellt, dann ja, Sie können eine nginx-Konfiguration dafür erstellen; die Details dazu liegen außerhalb des Geltungsbereichs von Meta.

2 „Gefällt mir“

Könnte das Sitemap-Plugin nicht als Rohdaten für die nginx-302-Weiterleitungen dienen?

1 „Gefällt mir“

Wir haben es zum Laufen gebracht, indem wir dem web.ssl.template.yml-File Folgendes hinzufügten:

if ($host = domain2.com) {
    rewrite ^/$ /c/example/18 permanent;
}
2 „Gefällt mir“

Bitte verschiebe das stattdessen in eine replace-Anweisung in deiner app.yml, sonst werden zukünftige Updates für dich zur Qual!

3 „Gefällt mir“

Ok, danke dafür!!!

1 „Gefällt mir“