web: E9 und E10 entschieden — Zuordnung aktiv, eine Adresse je statischer Seite, Hub-Portalseiten leiten weiter
E9: Kategorie-Zuordnung wie vorgeschlagen übernommen, Zuordnung ist standardmäßig an (CANONICAL_ASSIGNMENT_ENABLED). Auf der Dev-Kopie verifiziert: Kopie trägt rel=canonical auf die Erstquelle und fällt aus der Sitemap ihres Portals. E10: faq, hilfe, gute-pressemitteilung, die vier Transparenzseiten und die API-Doku lagen auf allen drei Hosts mit identischem Text und je eigenem Self-Canonical. Jetzt führt presseecho die Informationsseiten, der Hub die API-Doku; Sitemap und llms.txt nennen nur die führende Adresse. Rechtstexte (Impressum, Datenschutz, AGB, Richtlinien, Meldeweg, Kündigung) bleiben bewusst je Host — jede Domain ist ein eigenes Angebot mit eigener Anbieterkennzeichnung. Bei der Erreichbarkeitsprüfung des Hubs gefunden und behoben: /de/preise, /de/veroeffentlichen, /de/newsrooms und /de/suche wurden unter pressekonto.com mit dem Branding von businessportal24 ausgeliefert (der Portal-Kontext fällt dort darauf zurück) — jetzt 301 auf presseecho, die Transparenz-Navigation verlinkt direkt dorthin. /de/kontakt und /de/ueber-uns sprangen über /de auf die Startseite, jetzt in einem Schritt. Der Self-Canonical kommt jetzt aus dem aufgerufenen Host; Portal-Inhalte, die über den Hub laufen, behalten ihr Portal (webPortalContextApplied). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
ee267c622e
commit
4c17a17254
18 changed files with 434 additions and 17 deletions
|
|
@ -3,6 +3,7 @@
|
|||
use App\Http\Middleware\BasicAuthMiddleware;
|
||||
use App\Http\Middleware\LogApiUsage;
|
||||
use App\Http\Middleware\RecordMailLinkClick;
|
||||
use App\Http\Middleware\RedirectPortalOnlyPagesFromHub;
|
||||
use App\Http\Middleware\RedirectWwwToApex;
|
||||
use App\Http\Middleware\RejectLegacyApiKeys;
|
||||
use App\Http\Middleware\SecurityHeaders;
|
||||
|
|
@ -50,6 +51,13 @@ return Application::configure(basePath: dirname(__DIR__))
|
|||
// Ausgabe/Sprache (de|en) aus dem URL-Präfix ableiten und URL-Defaults setzen.
|
||||
$middleware->append(SetEdition::class);
|
||||
|
||||
// Portalseiten auf dem Hub (Anhang 2, E10): /de/preise & Co. gibt es
|
||||
// nur auf den Portalen — 301 statt einer Fassung mit fremdem Branding
|
||||
// unter pressekonto.com. In der web-Gruppe, nicht global: die
|
||||
// Middleware liest den Routennamen, und der steht erst nach dem
|
||||
// Routing fest.
|
||||
$middleware->web(append: [RedirectPortalOnlyPagesFromHub::class]);
|
||||
|
||||
// Wohin eingeloggte User von Gast-Routen (/login, /register) gelenkt
|
||||
// werden: rollen- und verifizierungsbewusst statt fix auf /dashboard,
|
||||
// sonst landet ein Customer dort im 403 und sitzt fest.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue