19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration
Umbenennung presseportale → pressekonto in Domains, Themes und Dokumentation. Design-Tokens, Portal-Shell, Customer-Dashboard, Auth- und Admin-PM-Views. Artisan-Befehl migrate:legacy-media mit Tests und Hub-Flux-Entwicklungsdocs. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
092ee0e918
commit
0a3e52d603
112 changed files with 8464 additions and 1649 deletions
|
|
@ -8,18 +8,18 @@ Für dein Multi-Domain-Setup empfehle ich folgende Asset-URLs:
|
|||
|
||||
| Bereich | Domain | Asset-URL | Port | Verwendung |
|
||||
|---------|--------|-----------|------|------------|
|
||||
| **Backend** | presseportale.test | `assets.presseportale.test` | 5177 | Portal + FluxUI |
|
||||
| **Frontend** | presseecho.test<br>businessportal24.test | `assets-web.presseportale.test` | 5178 | Beide Frontend-Domains |
|
||||
| **Backend** | pressekonto.test | `assets.pressekonto.test` | 5177 | Portal + FluxUI |
|
||||
| **Frontend** | presseecho.test<br>businessportal24.test | `assets-web.pressekonto.test` | 5178 | Beide Frontend-Domains |
|
||||
|
||||
### Warum diese URLs?
|
||||
|
||||
#### 1. **assets.presseportale.test** (Portal/Backend)
|
||||
#### 1. **assets.pressekonto.test** (Portal/Backend)
|
||||
- ✅ Kurz und prägnant
|
||||
- ✅ Eindeutig dem Portal zugeordnet
|
||||
- ✅ Keine zusätzliche Subdomain-Tiefe
|
||||
- ✅ Folgt gängiger Konvention
|
||||
|
||||
#### 2. **assets-web.presseportale.test** (Web/Frontend)
|
||||
#### 2. **assets-web.pressekonto.test** (Web/Frontend)
|
||||
- ✅ Klar als "Web" (Frontend) gekennzeichnet
|
||||
- ✅ Ein Asset-Server für beide Frontend-Domains
|
||||
- ✅ Gute Trennung zu Portal-Assets
|
||||
|
|
@ -31,23 +31,23 @@ Falls du andere URLs bevorzugst, hier sind Alternativen:
|
|||
|
||||
### Option A: Mit Suffix-Präfix
|
||||
```
|
||||
portal-assets.presseportale.test → Port 5177
|
||||
web-assets.presseportale.test → Port 5178
|
||||
portal-assets.pressekonto.test → Port 5177
|
||||
web-assets.pressekonto.test → Port 5178
|
||||
```
|
||||
- ⚠️ Etwas länger
|
||||
- ✅ Sehr explizit
|
||||
|
||||
### Option B: Mit "vite" im Namen
|
||||
```
|
||||
vite.presseportale.test → Port 5177
|
||||
vite-web.presseportale.test → Port 5178
|
||||
vite.pressekonto.test → Port 5177
|
||||
vite-web.pressekonto.test → Port 5178
|
||||
```
|
||||
- ⚠️ Technologie-spezifisch (was wenn du später zu einem anderen Build-Tool wechselst?)
|
||||
- ⚠️ Weniger klar was geladen wird
|
||||
|
||||
### Option C: Separate Domains pro Frontend
|
||||
```
|
||||
assets.presseportale.test → Port 5177 (Portal)
|
||||
assets.pressekonto.test → Port 5177 (Portal)
|
||||
assets.presseecho.test → Port 5178 (Presseecho)
|
||||
assets.businessportal24.test → Port 5178 (Businessportal24)
|
||||
```
|
||||
|
|
@ -61,7 +61,7 @@ assets.businessportal24.test → Port 5178 (Businessportal24)
|
|||
|
||||
```yaml
|
||||
# Portal Assets (Backend)
|
||||
- "traefik.http.routers.assets-portal.rule=Host(`assets.presseportale.test`)"
|
||||
- "traefik.http.routers.assets-portal.rule=Host(`assets.pressekonto.test`)"
|
||||
- "traefik.http.routers.assets-portal.entrypoints=websecure"
|
||||
- "traefik.http.routers.assets-portal.tls=true"
|
||||
- "traefik.http.routers.assets-portal.service=assets-portal-service"
|
||||
|
|
@ -69,7 +69,7 @@ assets.businessportal24.test → Port 5178 (Businessportal24)
|
|||
- "traefik.http.services.assets-portal-service.loadbalancer.server.scheme=http"
|
||||
|
||||
# Web Assets (Frontend)
|
||||
- "traefik.http.routers.assets-web.rule=Host(`assets-web.presseportale.test`)"
|
||||
- "traefik.http.routers.assets-web.rule=Host(`assets-web.pressekonto.test`)"
|
||||
- "traefik.http.routers.assets-web.entrypoints=websecure"
|
||||
- "traefik.http.routers.assets-web.tls=true"
|
||||
- "traefik.http.routers.assets-web.service=assets-web-service"
|
||||
|
|
@ -89,8 +89,8 @@ ports:
|
|||
|
||||
```env
|
||||
# Vite Asset Domains
|
||||
ASSET_URL_PORTAL=https://assets.presseportale.test
|
||||
ASSET_URL_WEB=https://assets-web.presseportale.test
|
||||
ASSET_URL_PORTAL=https://assets.pressekonto.test
|
||||
ASSET_URL_WEB=https://assets-web.pressekonto.test
|
||||
|
||||
# Vite Development Ports
|
||||
VITE_PORT_PORTAL=5177
|
||||
|
|
@ -102,11 +102,11 @@ VITE_PORT_WEB=5178
|
|||
Füge folgende Einträge zu deiner `/etc/hosts` (Linux/Mac) oder `C:\Windows\System32\drivers\etc\hosts` (Windows) hinzu:
|
||||
|
||||
```
|
||||
127.0.0.1 presseportale.test
|
||||
127.0.0.1 pressekonto.test
|
||||
127.0.0.1 presseecho.test
|
||||
127.0.0.1 businessportal24.test
|
||||
127.0.0.1 assets.presseportale.test
|
||||
127.0.0.1 assets-web.presseportale.test
|
||||
127.0.0.1 assets.pressekonto.test
|
||||
127.0.0.1 assets-web.pressekonto.test
|
||||
```
|
||||
|
||||
## Vite-Konfigurationen
|
||||
|
|
@ -121,7 +121,7 @@ export default defineConfig({
|
|||
host: "0.0.0.0",
|
||||
port: 5177,
|
||||
hmr: {
|
||||
host: "assets.presseportale.test", // ← Asset-URL
|
||||
host: "assets.pressekonto.test", // ← Asset-URL
|
||||
protocol: "wss",
|
||||
},
|
||||
},
|
||||
|
|
@ -139,7 +139,7 @@ export default defineConfig({
|
|||
host: "0.0.0.0",
|
||||
port: 5178,
|
||||
hmr: {
|
||||
host: "assets-web.presseportale.test", // ← Asset-URL
|
||||
host: "assets-web.pressekonto.test", // ← Asset-URL
|
||||
protocol: "wss",
|
||||
},
|
||||
},
|
||||
|
|
@ -156,16 +156,16 @@ Browser-Request
|
|||
↓
|
||||
2. Laravel lädt View mit: @vite(['resources/css/web/theme-presseecho.css', ...])
|
||||
↓
|
||||
3. Vite-Helper generiert: <script src="https://assets-web.presseportale.test/@vite/client"></script>
|
||||
<link href="https://assets-web.presseportale.test/resources/css/web/theme-presseecho.css">
|
||||
3. Vite-Helper generiert: <script src="https://assets-web.pressekonto.test/@vite/client"></script>
|
||||
<link href="https://assets-web.pressekonto.test/resources/css/web/theme-presseecho.css">
|
||||
↓
|
||||
4. Browser requested: assets-web.presseportale.test
|
||||
4. Browser requested: assets-web.pressekonto.test
|
||||
↓
|
||||
5. Traefik routet zu: Container Port 5178
|
||||
↓
|
||||
6. Vite Web Server antwortet
|
||||
↓
|
||||
7. HMR WebSocket öffnet: wss://assets-web.presseportale.test
|
||||
7. HMR WebSocket öffnet: wss://assets-web.pressekonto.test
|
||||
↓
|
||||
8. ✅ Hot Module Replacement funktioniert!
|
||||
```
|
||||
|
|
@ -175,8 +175,8 @@ Browser-Request
|
|||
### 1. DNS-Auflösung testen
|
||||
```bash
|
||||
# Sollte zu 127.0.0.1 auflösen
|
||||
ping assets.presseportale.test
|
||||
ping assets-web.presseportale.test
|
||||
ping assets.pressekonto.test
|
||||
ping assets-web.pressekonto.test
|
||||
```
|
||||
|
||||
### 2. Vite-Server starten
|
||||
|
|
@ -195,15 +195,15 @@ Du solltest sehen:
|
|||
|
||||
### 3. Browser-Test
|
||||
Öffne:
|
||||
- https://presseportale.test (sollte Assets von assets.presseportale.test laden)
|
||||
- https://presseecho.test (sollte Assets von assets-web.presseportale.test laden)
|
||||
- https://businessportal24.test (sollte Assets von assets-web.presseportale.test laden)
|
||||
- https://pressekonto.test (sollte Assets von assets.pressekonto.test laden)
|
||||
- https://presseecho.test (sollte Assets von assets-web.pressekonto.test laden)
|
||||
- https://businessportal24.test (sollte Assets von assets-web.pressekonto.test laden)
|
||||
|
||||
### 4. HMR-Test
|
||||
1. Öffne Browser DevTools (F12)
|
||||
2. Gehe zu "Network" Tab
|
||||
3. Filter auf "WS" (WebSocket)
|
||||
4. Du solltest Verbindungen zu `wss://assets.*.presseportale.test` sehen
|
||||
4. Du solltest Verbindungen zu `wss://assets.*.pressekonto.test` sehen
|
||||
5. Ändere eine CSS-Datei
|
||||
6. Browser sollte automatisch neu laden (ohne vollständigen Page-Refresh)
|
||||
|
||||
|
|
@ -256,8 +256,8 @@ docker compose logs laravel.test | grep traefik
|
|||
### ✅ Verwende diese Asset-URLs:
|
||||
|
||||
```
|
||||
assets.presseportale.test → Port 5177 (Portal/Backend)
|
||||
assets-web.presseportale.test → Port 5178 (Web/Frontend)
|
||||
assets.pressekonto.test → Port 5177 (Portal/Backend)
|
||||
assets-web.pressekonto.test → Port 5178 (Web/Frontend)
|
||||
```
|
||||
|
||||
### ✅ Vorteile:
|
||||
|
|
|
|||
|
|
@ -9,14 +9,14 @@ Füge die folgenden Variablen zu deiner `.env`-Datei hinzu:
|
|||
|
||||
```env
|
||||
# Domain-Konfigurationen
|
||||
APP_NAME=presseportale
|
||||
APP_URL=https://presseportale.test
|
||||
APP_NAME=pressekonto
|
||||
APP_URL=https://pressekonto.test
|
||||
APP_PRIMARY="#3ea3dc"
|
||||
APP_ACCENT="#5c5c60"
|
||||
|
||||
# Entwicklungseinstellungen für Domains
|
||||
DEV_SIMULATE_DOMAIN=false
|
||||
DEV_SIMULATED_DOMAIN=presseportale.test
|
||||
DEV_SIMULATED_DOMAIN=pressekonto.test
|
||||
```
|
||||
|
||||
## Entwicklungsmodus
|
||||
|
|
@ -34,10 +34,10 @@ unabhängig von der tatsächlichen URL.
|
|||
|
||||
Jede Domain kann eigene Einstellungen haben:
|
||||
|
||||
### Haupt-Website (presseportale.test)
|
||||
### Haupt-Website (pressekonto.test)
|
||||
|
||||
- `APP_URL`: Die Domain für die Haupt-Website (https://presseportale.test)
|
||||
- `APP_NAME`: Der Name der Haupt-Website (presseportale)
|
||||
- `APP_URL`: Die Domain für die Haupt-Website (https://pressekonto.test)
|
||||
- `APP_NAME`: Der Name der Haupt-Website (pressekonto)
|
||||
- `APP_PRIMARY`: Die primäre Farbe im HEX-Format (#3ea3dc)
|
||||
- `APP_ACCENT`: Die Akzentfarbe im HEX-Format (#5c5c60)
|
||||
|
||||
|
|
@ -62,7 +62,7 @@ Jede Domain kann eigene Einstellungen haben:
|
|||
Um die verschiedenen Domains lokal zu testen, füge folgende Zeilen zu deiner Hosts-Datei hinzu:
|
||||
|
||||
```
|
||||
127.0.0.1 presseportale.test
|
||||
127.0.0.1 pressekonto.test
|
||||
127.0.0.1 presseecho.test
|
||||
127.0.0.1 businessportal24.test
|
||||
```
|
||||
|
|
@ -101,7 +101,7 @@ Im Code kannst du auf die Domain-Konfiguration zugreifen:
|
|||
|
||||
Das Projekt verwendet bereits eine Multi-Domain-Architektur mit:
|
||||
|
||||
- **Hauptwebsite:** `presseportale.test` - Hauptwebsite mit blauem Theme (#3ea3dc)
|
||||
- **Hauptwebsite:** `pressekonto.test` - Hauptwebsite mit blauem Theme (#3ea3dc)
|
||||
- **Presseecho:** `presseecho.test` - Presseecho-Website mit rotem Theme (#e94a3c)
|
||||
- **Business Portal:** `businessportal24.test` - Business Portal mit orangem Theme (#f69f0f)
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
## 🔍 Ursprüngliches Problem
|
||||
|
||||
Auf https://presseportale.test erschien der Fehler:
|
||||
Auf https://pressekonto.test erschien der Fehler:
|
||||
```
|
||||
[Error] Not allowed to use restricted network host "0.0.0.0":
|
||||
https://0.0.0.0:5178/@vite/client
|
||||
|
|
@ -53,7 +53,7 @@ npm run dev:all
|
|||
|
||||
```bash
|
||||
# Portal CSS wird korrekt geladen:
|
||||
curl -Iks https://assets.presseportale.test/resources/css/portal.css
|
||||
curl -Iks https://assets.pressekonto.test/resources/css/portal.css
|
||||
# → HTTP/2 200 ✅
|
||||
|
||||
# Web Assets funktionieren:
|
||||
|
|
@ -65,13 +65,13 @@ curl -Iks https://assets.businessportal24.test/resources/css/web/theme-businessp
|
|||
|
||||
| Domain | Asset-Domain | Port | Build-Dir | CSS-Datei |
|
||||
|--------|-------------|------|-----------|-----------|
|
||||
| presseportale.test | assets.presseportale.test | 5177 | build/portal | portal.css |
|
||||
| pressekonto.test | assets.pressekonto.test | 5177 | build/portal | portal.css |
|
||||
| presseecho.test | assets.presseecho.test | 5178 | build/web | theme-presseecho.css |
|
||||
| businessportal24.test | assets.businessportal24.test | 5178 | build/web | theme-businessportal24.css |
|
||||
|
||||
## 🚀 Nächste Schritte
|
||||
|
||||
1. **Browser testen**: Öffne https://presseportale.test und mache einen Hard-Refresh (`Ctrl+Shift+R`)
|
||||
1. **Browser testen**: Öffne https://pressekonto.test und mache einen Hard-Refresh (`Ctrl+Shift+R`)
|
||||
2. **Keine Fehler mehr**: Die "0.0.0.0" Fehler sollten verschwunden sein
|
||||
3. **Assets laden über HTTPS**: Alle CSS/JS-Dateien werden über die korrekten Asset-Subdomains geladen
|
||||
|
||||
|
|
@ -87,7 +87,7 @@ Falls du die Docker Container neu gestartet hast, stelle sicher dass:
|
|||
|
||||
1. ✅ DNS-Einträge in `/etc/hosts` vorhanden sind:
|
||||
```
|
||||
127.0.0.1 assets.presseportale.test
|
||||
127.0.0.1 assets.pressekonto.test
|
||||
127.0.0.1 assets.presseecho.test
|
||||
127.0.0.1 assets.businessportal24.test
|
||||
```
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
### 1. `config/domains.php`
|
||||
Jede Domain hat jetzt eine dedizierte `asset_url`:
|
||||
- `portal`: `https://assets.presseportale.test`
|
||||
- `portal`: `https://assets.pressekonto.test`
|
||||
- `presseecho`: `https://assets.presseecho.test`
|
||||
- `businessportal24`: `https://assets.businessportal24.test`
|
||||
|
||||
|
|
@ -39,7 +39,7 @@ sleep 5 && tail -30 /tmp/vite-server.log
|
|||
### 2. Im Browser testen
|
||||
|
||||
Öffne mit Hard-Refresh (`Ctrl+Shift+R`):
|
||||
- ✅ https://presseportale.test
|
||||
- ✅ https://pressekonto.test
|
||||
- ✅ https://presseecho.test
|
||||
- ✅ https://businessportal24.test
|
||||
|
||||
|
|
@ -52,7 +52,7 @@ https://0.0.0.0:5178/@vite/client
|
|||
|
||||
**NACHHER (✅)**:
|
||||
```
|
||||
https://assets.presseportale.test/@vite/client
|
||||
https://assets.pressekonto.test/@vite/client
|
||||
https://assets.presseecho.test/@vite/client
|
||||
https://assets.businessportal24.test/@vite/client
|
||||
```
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ composer require laravel/fortify laravel/sanctum
|
|||
|
||||
## Routen
|
||||
|
||||
### Web-Authentifizierung (presseportale.test)
|
||||
### Web-Authentifizierung (pressekonto.test)
|
||||
|
||||
- `GET /login` - Anmeldeseite (Livewire)
|
||||
- `POST /login` - Anmeldung (Livewire)
|
||||
|
|
@ -68,7 +68,7 @@ composer require laravel/fortify laravel/sanctum
|
|||
- `GET /verify-email` - E-Mail-Verifizierung (Livewire)
|
||||
- `GET /confirm-password` - Passwort bestätigen (Livewire)
|
||||
|
||||
### API-Routen (api.presseportale.test)
|
||||
### API-Routen (api.pressekonto.test)
|
||||
|
||||
- `GET /api/user` - Aktueller Benutzer (geschützt)
|
||||
- `GET /api/profile` - Benutzerprofil (geschützt)
|
||||
|
|
@ -78,7 +78,7 @@ composer require laravel/fortify laravel/sanctum
|
|||
|
||||
### Web-Authentifizierung
|
||||
|
||||
1. Besuchen Sie `http://portal.presseportale.test/login`
|
||||
1. Besuchen Sie `http://portal.pressekonto.test/login`
|
||||
2. Registrieren Sie sich oder melden Sie sich an
|
||||
3. Nutzen Sie die verschiedenen Authentifizierungsfeatures
|
||||
|
||||
|
|
@ -87,7 +87,7 @@ composer require laravel/fortify laravel/sanctum
|
|||
1. **Token erstellen**:
|
||||
|
||||
```bash
|
||||
curl -X POST http://api.presseportale.test/login \
|
||||
curl -X POST http://api.pressekonto.test/login \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"email":"user@example.com","password":"password"}'
|
||||
```
|
||||
|
|
@ -95,7 +95,7 @@ curl -X POST http://api.presseportale.test/login \
|
|||
2. **Geschützte Route aufrufen**:
|
||||
|
||||
```bash
|
||||
curl -X GET http://api.presseportale.test/api/user \
|
||||
curl -X GET http://api.pressekonto.test/api/user \
|
||||
-H "Authorization: Bearer YOUR_TOKEN_HERE"
|
||||
```
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Das Projekt nutzt ein dynamisches Theme-System mit 3 Domains:
|
|||
|
||||
| Domain | Theme | Primary Color | Secondary Color | CSS-Datei |
|
||||
|--------|-------|---------------|-----------------|-----------|
|
||||
| **presseportale.test** | portal | #526266 | #82a0a7 | `resources/css/portal.css` |
|
||||
| **pressekonto.test** | portal | #526266 | #82a0a7 | `resources/css/portal.css` |
|
||||
| **presseecho.test** | presseecho | #345636 (Grün) | #6b8f71 | `resources/css/web/theme-presseecho.css` |
|
||||
| **businessportal24.test** | businessportal24 | #cf3628 (Rot) | #f0834a | `resources/css/web/theme-businessportal24.css` |
|
||||
|
||||
|
|
@ -276,8 +276,8 @@ npm run build:web
|
|||
Der `ThemeServiceProvider` unterstützt einen `?theme=` URL-Parameter zum Testen:
|
||||
|
||||
```
|
||||
https://presseportale.test?theme=presseecho
|
||||
https://presseportale.test?theme=businessportal24
|
||||
https://pressekonto.test?theme=presseecho
|
||||
https://pressekonto.test?theme=businessportal24
|
||||
```
|
||||
|
||||
### Via Host
|
||||
|
|
@ -285,7 +285,7 @@ https://presseportale.test?theme=businessportal24
|
|||
Einfach die entsprechende Domain aufrufen:
|
||||
|
||||
```
|
||||
https://presseportale.test → Portal Theme
|
||||
https://pressekonto.test → Portal Theme
|
||||
https://presseecho.test → Presseecho Theme
|
||||
https://businessportal24.test → Businessportal24 Theme
|
||||
```
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Jede Domain hat jetzt ihre eigene dedizierte Asset-Subdomain:
|
|||
|
||||
| Domain | Asset-Subdomain | Port | Vite-Config |
|
||||
|--------|----------------|------|-------------|
|
||||
| `presseportale.test` | `assets.presseportale.test` | 5177 | `vite.portal.config.js` |
|
||||
| `pressekonto.test` | `assets.pressekonto.test` | 5177 | `vite.portal.config.js` |
|
||||
| `presseecho.test` | `assets.presseecho.test` | 5178 | `vite.web.config.js` |
|
||||
| `businessportal24.test` | `assets.businessportal24.test` | 5178 | `vite.web.config.js` |
|
||||
|
||||
|
|
@ -20,7 +20,7 @@ Füge folgende Einträge zu deiner Hosts-Datei hinzu (lokal auf deinem Host-Syst
|
|||
**Windows**: `C:\Windows\System32\drivers\etc\hosts`
|
||||
|
||||
```
|
||||
127.0.0.1 assets.presseportale.test
|
||||
127.0.0.1 assets.pressekonto.test
|
||||
127.0.0.1 assets.presseecho.test
|
||||
127.0.0.1 assets.businessportal24.test
|
||||
```
|
||||
|
|
@ -47,7 +47,7 @@ npm run dev:all
|
|||
|
||||
### 1. `docker-compose.yml`
|
||||
Neue Traefik-Routen hinzugefügt:
|
||||
- `assets.presseportale.test` → Port 5177 (Portal)
|
||||
- `assets.pressekonto.test` → Port 5177 (Portal)
|
||||
- `assets.presseecho.test` → Port 5178 (Presseecho)
|
||||
- `assets.businessportal24.test` → Port 5178 (Businessportal24)
|
||||
|
||||
|
|
@ -66,7 +66,7 @@ Nach dem Neustart kannst du testen:
|
|||
|
||||
```bash
|
||||
# Im DevContainer:
|
||||
curl -Ik https://assets.presseportale.test/@vite/client
|
||||
curl -Ik https://assets.pressekonto.test/@vite/client
|
||||
curl -Ik https://assets.presseecho.test/@vite/client
|
||||
curl -Ik https://assets.businessportal24.test/@vite/client
|
||||
```
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Dieses Projekt verwendet **2 separate Vite-Ports** für unterschiedliche Domain-
|
|||
|
||||
| Bereich | Port | Vite Config | Tailwind Config | Domains | FluxUI |
|
||||
|---------|------|-------------|-----------------|---------|--------|
|
||||
| **Backend (Portal)** | 5177 | `vite.portal.config.js` | `tailwind.portal.config.js` | `presseportale.test` | ✅ Ja |
|
||||
| **Backend (Portal)** | 5177 | `vite.portal.config.js` | `tailwind.portal.config.js` | `pressekonto.test` | ✅ Ja |
|
||||
| **Frontend (Web)** | 5178 | `vite.web.config.js` | `tailwind.web.config.js` | `presseecho.test`, `businessportal24.test` | ❌ Nein |
|
||||
|
||||
## Warum 2 Ports?
|
||||
|
|
@ -35,15 +35,15 @@ Startet beide Vite-Server parallel mit `concurrently`
|
|||
npm run dev:portal
|
||||
```
|
||||
- Port: 5177
|
||||
- HMR-Host: assets.presseportale.test
|
||||
- Domain: presseportale.test
|
||||
- HMR-Host: assets.pressekonto.test
|
||||
- Domain: pressekonto.test
|
||||
|
||||
### Option 3: Nur Frontend (Web)
|
||||
```bash
|
||||
npm run dev:web
|
||||
```
|
||||
- Port: 5178
|
||||
- HMR-Host: assets-web.presseportale.test
|
||||
- HMR-Host: assets-web.pressekonto.test
|
||||
- Domains: presseecho.test, businessportal24.test
|
||||
|
||||
## Production Build
|
||||
|
|
@ -86,7 +86,7 @@ public/
|
|||
## Theme-System
|
||||
|
||||
### Backend (Portal)
|
||||
- **Domain:** presseportale.test
|
||||
- **Domain:** pressekonto.test
|
||||
- **Theme:** `portal`
|
||||
- **CSS:** `resources/css/portal.css`
|
||||
- **Views:** `resources/views/portal/**`
|
||||
|
|
@ -110,8 +110,8 @@ public/
|
|||
|
||||
Beide Vite-Server laufen intern auf HTTP (`https: false`), Traefik übernimmt SSL-Terminierung:
|
||||
|
||||
- **Portal HMR:** `wss://assets.presseportale.test` → Port 5177
|
||||
- **Web HMR:** `wss://assets-web.presseportale.test` → Port 5178
|
||||
- **Portal HMR:** `wss://assets.pressekonto.test` → Port 5177
|
||||
- **Web HMR:** `wss://assets-web.pressekonto.test` → Port 5178
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ sudo nano /etc/hosts
|
|||
|
||||
**Einträge:**
|
||||
```
|
||||
127.0.0.1 assets.presseportale.test
|
||||
127.0.0.1 assets.pressekonto.test
|
||||
127.0.0.1 assets.presseecho.test
|
||||
127.0.0.1 assets.businessportal24.test
|
||||
```
|
||||
|
|
@ -51,7 +51,7 @@ Zurück im DevContainer:
|
|||
tail -20 /tmp/vite-server.log
|
||||
|
||||
# Teste die Asset-URLs:
|
||||
curl -Ik https://assets.presseportale.test/@vite/client
|
||||
curl -Ik https://assets.pressekonto.test/@vite/client
|
||||
curl -Ik https://assets.presseecho.test/@vite/client
|
||||
curl -Ik https://assets.businessportal24.test/@vite/client
|
||||
|
||||
|
|
@ -63,7 +63,7 @@ curl -Ik https://assets.businessportal24.test/@vite/client
|
|||
Öffne:
|
||||
- https://businessportal24.test
|
||||
- https://presseecho.test
|
||||
- https://presseportale.test
|
||||
- https://pressekonto.test
|
||||
|
||||
Die Assets sollten nun korrekt über HTTPS von den jeweiligen Asset-Subdomains geladen werden!
|
||||
|
||||
|
|
@ -71,7 +71,7 @@ Die Assets sollten nun korrekt über HTTPS von den jeweiligen Asset-Subdomains g
|
|||
|
||||
| Hauptdomain | Asset-Domain | Port | Build-Dir |
|
||||
|------------|-------------|------|-----------|
|
||||
| presseportale.test | assets.presseportale.test | 5177 | public/build/portal |
|
||||
| pressekonto.test | assets.pressekonto.test | 5177 | public/build/portal |
|
||||
| presseecho.test | assets.presseecho.test | 5178 | public/build/web |
|
||||
| businessportal24.test | assets.businessportal24.test | 5178 | public/build/web |
|
||||
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ Du benötigst **mindestens 2 Vite-Ports**:
|
|||
│ └──────────────────┘ └──────────────────┘ │
|
||||
│ ↓ ↓ │
|
||||
│ ┌──────────────────┐ ┌──────────────────┐ │
|
||||
│ │ presseportale.test │ │ presseecho.test │ │
|
||||
│ │ pressekonto.test │ │ presseecho.test │ │
|
||||
│ │ │ │ businessp24.test│ │
|
||||
│ └──────────────────┘ └──────────────────┘ │
|
||||
│ │
|
||||
|
|
@ -80,14 +80,14 @@ Du benötigst **mindestens 2 Vite-Ports**:
|
|||
- Port: **5177**
|
||||
- Input: `resources/css/portal.css`
|
||||
- Build: `public/build/portal`
|
||||
- HMR: `assets.presseportale.test`
|
||||
- HMR: `assets.pressekonto.test`
|
||||
- FluxUI: ✅ Ja
|
||||
|
||||
#### ✅ `vite.web.config.js`
|
||||
- Port: **5178** (geändert von 5177!)
|
||||
- Input: `theme-presseecho.css`, `theme-businessportal24.css`
|
||||
- Build: `public/build/web`
|
||||
- HMR: `assets-web.presseportale.test`
|
||||
- HMR: `assets-web.pressekonto.test`
|
||||
- FluxUI: ❌ Nein
|
||||
|
||||
#### ❌ `vite.config.js` (deprecated)
|
||||
|
|
@ -190,14 +190,14 @@ npm run build:web
|
|||
|
||||
| URL | Vite-Port | Theme | FluxUI |
|
||||
|-----|-----------|-------|--------|
|
||||
| https://presseportale.test | 5177 | portal | ✅ |
|
||||
| https://pressekonto.test | 5177 | portal | ✅ |
|
||||
| https://presseecho.test | 5178 | presseecho | ❌ |
|
||||
| https://businessportal24.test | 5178 | businessportal24 | ❌ |
|
||||
|
||||
## HMR (Hot Module Replacement)
|
||||
|
||||
- **Portal:** `wss://assets.presseportale.test` → Port 5177
|
||||
- **Web:** `wss://assets-web.presseportale.test` → Port 5178
|
||||
- **Portal:** `wss://assets.pressekonto.test` → Port 5177
|
||||
- **Web:** `wss://assets-web.pressekonto.test` → Port 5178
|
||||
|
||||
⚠️ **Wichtig:** Traefik muss beide HMR-Hosts routen!
|
||||
|
||||
|
|
@ -210,12 +210,12 @@ Stelle sicher, dass Traefik beide Vite-Ports routet:
|
|||
# docker-compose.yml oder traefik.yml
|
||||
labels:
|
||||
# Portal Assets
|
||||
- "traefik.http.routers.vite-portal.rule=Host(`assets.presseportale.test`)"
|
||||
- "traefik.http.routers.vite-portal.rule=Host(`assets.pressekonto.test`)"
|
||||
- "traefik.http.routers.vite-portal.service=vite-portal"
|
||||
- "traefik.http.services.vite-portal.loadbalancer.server.port=5177"
|
||||
|
||||
# Web Assets
|
||||
- "traefik.http.routers.vite-web.rule=Host(`assets-web.presseportale.test`)"
|
||||
- "traefik.http.routers.vite-web.rule=Host(`assets-web.pressekonto.test`)"
|
||||
- "traefik.http.routers.vite-web.service=vite-web"
|
||||
- "traefik.http.services.vite-web.loadbalancer.server.port=5178"
|
||||
```
|
||||
|
|
@ -223,11 +223,11 @@ labels:
|
|||
### 2. DNS/Hosts-Datei aktualisieren
|
||||
|
||||
```
|
||||
127.0.0.1 presseportale.test
|
||||
127.0.0.1 pressekonto.test
|
||||
127.0.0.1 presseecho.test
|
||||
127.0.0.1 businessportal24.test
|
||||
127.0.0.1 assets.presseportale.test
|
||||
127.0.0.1 assets-web.presseportale.test
|
||||
127.0.0.1 assets.pressekonto.test
|
||||
127.0.0.1 assets-web.pressekonto.test
|
||||
```
|
||||
|
||||
### 3. Blade-Templates aktualisieren
|
||||
|
|
@ -258,7 +258,7 @@ Diese Dateien werden nicht mehr benötigt:
|
|||
npm run dev:all
|
||||
|
||||
# 2. Browser öffnen
|
||||
# - https://presseportale.test (Backend)
|
||||
# - https://pressekonto.test (Backend)
|
||||
# - https://presseecho.test (Frontend Grün)
|
||||
# - https://businessportal24.test (Frontend Rot)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
openapi: 3.1.0
|
||||
info:
|
||||
title: Presseportale API
|
||||
title: Pressekonto API
|
||||
version: 1.0.0
|
||||
description: >
|
||||
REST API for customer integrations after the 2026 migration. Legacy
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue