Подстраница страницы аннотации маршрута соответствует обоим маршрутам - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь создать аннотации маршрутов для контроллера, который обрабатывает страницы в моем приложении.Структура страницы (читай: URL) может иметь несколько уровней.Однако он должен принимать только одну переменную (слаг) для всего маршрута.Я нашел решение в добавлении нескольких операторов @route, однако страница с определенным фрагментом теперь будет соответствовать обоим маршрутам, и я думаю, что это вызовет проблемы с дублированием контента в SEO.Есть ли какие-либо решения моей проблемы, которые не вызывают проблемы с дублированным содержимым?У меня также есть всего один оператор @route, например / {slug}

. Я также пытался разрешить косую черту (/) в переменной части (symfony называет это заполнителем).

/**
  * @Route("/{slug}", name="page", methods={"GET"})
  * @Route("/information/{slug}", name="subpage", methods={"GET"})
  */

Слаг со страницы будет соответствовать обоим маршрутам (проблема с дублированным содержимым)

1 Ответ

0 голосов
/ 12 февраля 2019

Вам необходимо добавить требования для "slug", см. Документы .

Попробуйте исключить путь "информация" следующим образом:

/**
  * @Route("/{slug}", name="page", methods={"GET"}, requirements={"slug"="^(?!information)$"})
  * @Route("/information/{slug}", name="subpage", methods={"GET"})
  */
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...