Skip to content

Commit

Permalink
Create multidomain.md
Browse files Browse the repository at this point in the history
  • Loading branch information
alxndr-w authored Dec 13, 2024
1 parent e50bf99 commit a995769
Showing 1 changed file with 72 additions and 0 deletions.
72 changes: 72 additions & 0 deletions _docs/howto/multidomain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# REDAXO Multidomain-Setup - Aufbau und Tipps

REDAXO ist standardmäßig als Single-Domain CMS konzipiert, kann aber durch entsprechende AddOns zu einer vollwertigen Multidomain-Lösung erweitert werden. Diese Dokumentation beschreibt die technischen Konzepte, Möglichkeiten und Grenzen von Multidomain-Setups in REDAXO.

## Core-Funktionalitäten

* REDAXO verwaltet Inhalte in einer hierarchischen Kategorien- und Artikel-Struktur
* Alle Inhalte liegen in einer gemeinsamen Datenbank
* Mehrsprachigkeit ist durch das integrierte Clang-System bereits im Core verfügbar

## YRewrite als Basis für Multidomain

YRewrite ist die zentrale Komponente für Multidomain-Setups in REDAXO und Voraussetzung für viele weitere Erweiterungen.

Das Add-on YRewrite ist ebenfalls von den Core-Entwicklern und ermöglicht den Betrieb von Multidomain-Setups in REDAXO.

### Funktionsweise

* YRewrite leitet Anfragen anhand von Regeln auf die entsprechenden Artikel um
* YRewrite kann auch für URL-Umschreibungen und Weiterleitungen genutzt werden
* YRewrite kann auch für die Generierung von XML-Sitemaps und robots.txt-Dateien genutzt werden
* YRewrite kann auch für die Generierung von Canonical-Links genutzt werden
* YRewrite kann auch für die Generierung von OpenGraph- und anderen Meta-Tags genutzt werden

### Best Practice für YRewrite

Von Anfang an empfiehlt es sich, in der REDAXO Struktur auf Root-Kategorien für jede Domain zu setzen. Unsere Empfehlung:

1. Der Mountpoint-Artikel ist der Startpunkt für die Domain - nutze den Startartikel der Root-Kategorie als Mountpoint-Artikel.
2. Als Startartikel kann ebenfalls der Startartikel der Root-Kategorie genutzt werden, muss jedoch nicht.
3. Es können unterhalb eines Mountpoint-Artikels beliebig viele Kategorien und Artikel angelegt werden.
4. Es können ebenfalls Mountpoint-Artikel anderer Domains unterhalb einer Root-Kategorie angelegt werden - dies ist dann praktisch, wenn es eine spezifische Landingpage innerhalb einer Website mit anderer Domain geben soll.

## Medienpool & Berechtigungen

Aktueller Nachteil in REDAXO ist der gemeinsame Medienpool über alle Websites hinweg. Hier gibt es jedoch bereits Lösungsansätze. Das Berechtigungskonzept ermöglicht:

* Rollenbasierte Zugriffssteuerung auf Kategorien
* Beschränkung auf Struktur-Bereiche pro Nutzer
* Medienkategorien können Nutzern/Rollen zugewiesen werden
* Effektive Trennung durch Berechtigungsmanagement

Mit einer vertrauensvollen Nutzerverwaltung und klaren Strukturvorgaben kann der gemeinsame Medienpool auch in Multidomain-Setups effektiv genutzt werden.

## Erweiterungen für Multidomain

### Native Multidomain-Unterstützung

Folgende AddOns bieten eingebaute Multidomain-Funktionen:

* [FriendsOfREDAXO/maintenance](https://github.com/FriendsOfREDAXO/maintenance): Wartungsmodus pro Domain konfigurierbar, Domains können vom Wartungsmodus ausgeschlossen werden.

* [FriendsOfREDAXO/yrewrite_metainfo](https://github.com/FriendsOfREDAXO/yrewrite_metainfo): Meta-Informationen auf Domain-Ebene, z.B. für Domainspezifische Anpassungen (Logos, Farben, Footer etc.)

* [alexplusde/ycom_fast_forward](https://github.com/alexplusde/ycom_fast_forward): YCom-Konfiguration pro Domain und Domain-übergreifendes Frontend-Login (geplant)

### Add-ons, die den Multidomain-Betrieb verbessern

* **yform & yform-basierte AddOns**: Domain-übergreifende Datenverwaltung von Daten und Formularen. Optional: Domain-Beschränkung möglich (z.B. durch yform_field, siehe nachfogelnden Abschnitt)

* **yform_field**: Bietet ein Domain-Auswahlfeld für YForm-Datensätze und ist damit die ideale Basis für eigene Add-ons. Wird genutzt in
* * [FriendsOfREDAXO/neues](https://github.com/FriendsOfREDAXO/neues) (News-System)
* * [alexplusde/events](https://github.com/alexplusde/events) (Termine und Veranstaltungen)
* * [alexplusde/qanda](https://github.com/alexplusde/qanda) (FAQ-System)

* [FriendsOfREDAXO/mailer_profile](https://github.com/FriendsOfREDAXO/mailer_profile): Domain-spezifische Mail-Konfigurationen, z.B. für unterschiedliche SMTP-Profile

* [novinet-git/nv_categorymanager](https://github.com/novinet-git/nv_categorymanager): Kopieren kompletter Strukturbäume, sodass eine domainspezifische Root-Kategorie dupliziert werden kann und an die neue Domain angepasst werden kann.

* [tbaddade/redaxo_url](https://github.com/tbaddade/redaxo_url): Datensatz-Trennung nach Domain, Domain-spezifische URL-Generierung möglich.

* [alexplusde/be_style_fluent](https://github.com/alexplusde/be_style_fluent): Backend-Styles mit Domain-Schnellauswahl im Backend (Direktlinks zum Frontend)

0 comments on commit a995769

Please sign in to comment.