Statische Routen funktionieren nicht

Dass die statischen Routen unter TYPO3 9 bzw. 10 nicht funktionieren, liegt meines Erachtens nach an der Ausführungsreihenfolge der Middleware-Prozesse. Der StaticRouteResolver wird normalerweise vor dem SiteBaseRedirectResolver ausgeführt. Gerade statische Routen sollten jedoch zu aller erst kommen, da sie auch nichts weiter benötigen.
Um dies manuell zu ändern, muss in der Datei /typo3_src/typo3/sysext/frontend/Configuration/RequestMiddlewares.php folgendes geändert werden.

        'typo3/cms-frontend/base-redirect-resolver' => [
            'target' => \TYPO3\CMS\Frontend\Middleware\SiteBaseRedirectResolver::class,
            'after' => [
                'typo3/cms-frontend/site-resolver',
            ],
            'before' => [
                'typo3/cms-frontend/static-route-resolver'
            ]
        ],
        'typo3/cms-frontend/static-route-resolver' => [
            'target' => \TYPO3\CMS\Frontend\Middleware\StaticRouteResolver::class,
            'after' => [
                'typo3/cms-frontend/base-redirect-resolver',
            ],
            'before' => [
                'typo3/cms-frontend/page-resolver'
            ]
        ],

müsste geändert werden in:

        'typo3/cms-frontend/base-redirect-resolver' => [
            'target' => \TYPO3\CMS\Frontend\Middleware\SiteBaseRedirectResolver::class,
            'after' => [
                'typo3/cms-frontend/static-route-resolver',
            ],
            'before' => [
                'typo3/cms-redirects/redirecthandler',
            ]
        ],
        'typo3/cms-frontend/static-route-resolver' => [
            'target' => \TYPO3\CMS\Frontend\Middleware\StaticRouteResolver::class,
            'after' => [
                'typo3/cms-frontend/site-resolver',
            ],
            'before' => [
                'typo3/cms-frontend/base-redirect-resolver'
            ]
        ],

Sven Wappler

Webentwickler, Programmierer, TYPO3 Experte

Das könnte dich auch interessieren …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.