Breaking: #92352 - New default position for redirect middleware¶
See forge#92352
Description¶
TYPO3 10 introduced the feature toggle rearrangedRedirectMiddlewares
to rearrange the middlewares
typo3/cms-redirects/redirecthandler
and typo3/cms-frontend/base-redirect-resolver
. If enabled, the
the typo3/cms-redirects/redirecthandler
is executed first.
This order has the advantage that any redirect would work regardless whether the request made it through the
typo3/cms-frontend/base-redirect-resolver
. While this might cause problems in some scenarios it is by
far the better default.
Therefore the feature switch has been removed now and the above described order is the new default.
Impact¶
By putting the typo3/cms-frontend/base-redirect-resolver
last, redirects are always resolved even if no
configured base URL was requested. In most cases this is considered to be a bugfix. However, redirect behavior might
change.
Custom middlewares that have been put in between the two above mentioned middlewares most likely will lead to a circular dependency exception now. Such custom middlewares have to be revisited and registered differently.
Affected Installations¶
All installations that need the typo3/cms-frontend/base-redirect-resolver
executed before the
typo3/cms-redirects/redirecthandler
or that have the feature switch turned off and registered
a custom middleware in between the two or with one of the two as a position definition via after
or before
.
Migration¶
Manually check the position of your custom middlewares and adapt accordingly.
If needed the order of the middlewares can be switched back manually as described in the documentation.