1.1 KiB
1.1 KiB
ADR-001: Zweistufiges Domain- & Session-Handling
Kontext
Die bestehende Middleware/Provider-Logik greift in Teilen vor StartSession auf Session-Daten zu. Das führt in Randfällen zu doppelt erzeugten Sessions und inkonsistentem user_shop-Zustand.
Entscheidung
Wir trennen strikt in zwei Phasen:
-
DomainBootstrap (früh, rein):
- Host parsen →
DomainContext config('session.domain')+config('app.url')setzen- KEIN Sessionzugriff
- Host parsen →
-
DomainSessionSync (spät, zustandsvoll):
- Session ist aktiv
UserShopSessionManagersynchronisiertuser_shopin Session und Cookie
Alternativen
- Alles in einer Middleware: führt zu Sessionzugriff vor
StartSessionoder verspäteter Setzung vonsession.domain - Nur Cookies, keine Session: bricht vorhandene Annahmen in Views/Controllern
Konsequenzen
- Keine doppelten Sessions durch frühe Zugriffe
- Sticky-Shop über Subdomains stabil
- Optionale Abwärtskompatibilität via Legacy-Session-Keys
Status
Prototyp in dev/subdomain-optimization-gpt-5 abgelegt. Schrittweise Integration empfohlen.