I'm in the process of upgrading Symfony from 3.4 to 4.3 and I have a situation in which every route is matched with controller and method correctly, but then the request reaches RedirectableCompiledUrlMatcher
and replaces correct parameters with
_controller: Symfony\Bundle\FrameworkBundle\Controller\RedirectController::urlRedirectAction
That triggers all sorts of other stuff like invoking param converters, hitting firewalls, and other routing related stuff which it isn't supposed to because the matched route isn't correct.
Debugging 3.4 project continues without replacing the correct parameters.
My question is whether this is now the correct request flow (i.e. every route has to pass urlRedirectAction) and I need to configure other stuff or is there any way I can avoid invoking, I guess, RedirectableCompiledUrlMatcher
?
Is it possible that this happens because RedirectableUrlMatcher
is the default matcher for \Symfony\Component\Routing\Router
and how come it is the default one? Any chance to replace that with ordinary UrlMatcher
like it is in the 3.4?
It's exactly this line vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php:63
where I have $ret
matched correctly to my controller and $this->redirect()
is being called which replaces my controller with Symfony RedirectController.
Trait is part of RedirectableCompiledUrlMatcher
class