Я просматривал поваренную книгу, чтобы найти ответ на этот вопрос, и думаю, что нашел ее здесь . По умолчанию все параметры маршрута имеют скрытое требование, чтобы они соответствовали любому символу , кроме символа / ([^ /] +), но это поведение можно переопределить с помощью ключевого слова require, заставив его соответствовать любой символ.
Следующее должно создать маршрут по умолчанию, который будет перехватывать все остальные, и, как таковой, должен стоять последним в вашей конфигурации маршрутизации, так как любые следующие маршруты не будут никогда совпадать. Чтобы убедиться, что он также соответствует «/», в него включено значение по умолчанию для параметра url.
default_route:
pattern: /{url}
defaults: { _controller: AcmeBundle:Default:index, url: "index" }
requirements:
url: ".+"