Я нахожусь в процессе обновления Symfony с 3.4 до 4.3, и у меня есть ситуация, в которой каждый маршрут правильно сопоставляется с контроллером и методом, но затем запрос достигает RedirectableCompiledUrlMatcher
и заменяет правильные параметры на _controller: Symfony\Bundle\FrameworkBundle\Controller\RedirectController::urlRedirectAction
Это вызывает всевозможные другие вещи, такие как вызов преобразователей параметров, попадание в брандмауэры и другие вещи, связанные с маршрутизацией, которые не должны выполняться, потому что сопоставленный маршрут неверен.
Отладка проекта 3.4 продолжается без замены правильных параметров.
Мой вопрос заключается в том, является ли теперь это правильным потоком запросов (т. е. каждый маршрут должен проходить urlRedirectAction), и мне нужно настроить другие вещи, или я могу каким-либо образом избежать вызова, я думаю, RedirectableCompiledUrlMatcher
?
Возможно ли, что это происходит из-за того, что RedirectableUrlMatcher
является сопоставлением по умолчанию для \Symfony\Component\Routing\Router
, и почему оно является сопоставлением по умолчанию? Есть ли шанс заменить его обычным UrlMatcher
, как в 3.4?
Именно в этой строке vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php:63
у меня есть $ret
, правильно сопоставленный с моим контроллером, и вызывается $this->redirect()
, который заменяет мой контроллер на Symfony RedirectController. Черта является частью класса RedirectableCompiledUrlMatcher