# Multi-Domain-Konfiguration für Laravel Dieses Projekt unterstützt mehrere Domains mit unterschiedlichen Styles und Konfigurationen. Die Domains werden über `.env`-Variablen konfiguriert. ## Basis-Konfiguration Füge die folgenden Variablen zu deiner `.env`-Datei hinzu: ```env # Domain-Konfigurationen DOMAIN_ADMIN=portal.b2in.local DOMAIN_ADMIN_NAME="Admin Portal" DOMAIN_MAIN=b2in.local DOMAIN_MAIN_NAME="B2in" DOMAIN_LANDING1=landing1.local DOMAIN_LANDING1_NAME="Landing 1" DOMAIN_LANDING1_PRIMARY="#4f46e5" DOMAIN_LANDING1_ACCENT="#f59e0b" DOMAIN_LANDING2=landing2.local DOMAIN_LANDING2_NAME="Landing 2" DOMAIN_LANDING2_PRIMARY="#0d9488" DOMAIN_LANDING2_ACCENT="#ec4899" # Entwicklungseinstellungen für Domains DEV_SIMULATE_DOMAIN=false DEV_SIMULATED_DOMAIN=b2in.local ``` ## Entwicklungsmodus Während der Entwicklung kann es nützlich sein, verschiedene Domains zu simulieren, ohne die Host-Datei bearbeiten zu müssen: 1. Setze `DEV_SIMULATE_DOMAIN=true` in deiner `.env`-Datei. 2. Setze `DEV_SIMULATED_DOMAIN` auf eine der konfigurierten Domains (z.B. `landing1.local`). Dies bewirkt, dass die Anwendung so reagiert, als würde sie unter der angegebenen Domain laufen, unabhängig von der tatsächlichen URL. ## Domain-spezifische Konfiguration Jede Domain kann eigene Einstellungen haben: ### Admin-Portal (portal.b2in.local) - `DOMAIN_ADMIN`: Die Domain für den Admin-Bereich - `DOMAIN_ADMIN_NAME`: Der Name des Admin-Bereichs ### Haupt-Website (b2in.local) - `DOMAIN_MAIN`: Die Domain für die Haupt-Website - `DOMAIN_MAIN_NAME`: Der Name der Haupt-Website ### Landing-Page 1 (landing1.local) - `DOMAIN_LANDING1`: Die Domain für Landing-Page 1 - `DOMAIN_LANDING1_NAME`: Der Name der Landing-Page 1 - `DOMAIN_LANDING1_PRIMARY`: Die primäre Farbe im HEX-Format (z.B. `#4f46e5`) - `DOMAIN_LANDING1_ACCENT`: Die Akzentfarbe im HEX-Format (z.B. `#f59e0b`) ### Landing-Page 2 (landing2.local) - `DOMAIN_LANDING2`: Die Domain für Landing-Page 2 - `DOMAIN_LANDING2_NAME`: Der Name der Landing-Page 2 - `DOMAIN_LANDING2_PRIMARY`: Die primäre Farbe im HEX-Format (z.B. `#0d9488`) - `DOMAIN_LANDING2_ACCENT`: Die Akzentfarbe im HEX-Format (z.B. `#ec4899`) ## Hosts-Datei konfigurieren Um die verschiedenen Domains lokal zu testen, füge folgende Zeilen zu deiner Hosts-Datei hinzu: ``` 127.0.0.1 portal.b2in.local 127.0.0.1 b2in.local 127.0.0.1 landing1.local 127.0.0.1 landing2.local ``` Die Hosts-Datei befindet sich unter: - Windows: `C:\Windows\System32\drivers\etc\hosts` - macOS/Linux: `/etc/hosts` ## Verwendung im Code Im Code kannst du auf die Domain-Konfiguration zugreifen: ```php // Domain-Name in einem View {{ $domainName }} // Theme in einem View {{ $theme }} // Vollständige Domain-Konfiguration {{ $domainConfig['description'] }} // Über die app-Config {{ config('app.theme') }} {{ config('app.domain_name') }} ``` Jede Domain lädt automatisch ihr eigenes CSS und andere domainspezifische Assets.