Я пытаюсь запустить и запустить старый проект (не созданный мной) и вижу, что маршруты настроены в каком-то особом формате . Это типичная конфигурация маршрута:
customer_home:
path: /customer
host: "web.{domain}"
defaults:
_controller: "BackendBundle:Customer:index"
domain: "%domain%"
methods: [get]
options:
expose: true
requirements:
domain: '%domain%'
Теперь я извлек исходный код и обнаружил domain
в файлах конфигурации. Это было null
по умолчанию, и установив его на localhost:8000
, я смог хотя бы загрузить root без жалоб на %domain%
. Теперь он жалуется на отсутствие подходящего маршрута, что имеет смысл, поскольку ни один из них не был настроен. То, что было настроено (что я нашел, выполнив console debug:router
), было маршрутом root для admin.{domain}
и web.{domain}
. Я предполагаю, что это означает, что если домен myapp.com, должны быть настроены маршруты для admin.myapp.com/
и web.myapp.com
.
Это локальная настройка разработки, работающая на 127.0.0.1:8000, поэтому я попытался добавить это к /etc/hosts
:
127.0.0.1 web.localhost admin.localhost
Теперь я надеялся, что переход к web.localhost:8000
загрузит маршрут, но ни один не был найден. Я все еще получаю NotFoundHttpException
, но теперь я больше не понимаю, почему ... Как я могу настроить эту настройку так, чтобы я мог загрузить субдомены web
и admin
на моей машине для разработки? Другие маршруты, например /api/1/doc
, отлично работают.