Как запустить поддомен в Symfony 4 со встроенным веб-сервером? - PullRequest
0 голосов
/ 04 февраля 2019

Я прочитал следующее doc о поддомене.

Моя структура папок контроллера:

  • src / Controller / Admin
  • src/ Controller / Main

Все маршруты определены с аннотацией в файлах контроллера.

ex:

#src/Controller/Admin/HomeController.php
class HomeController extends AbstractController
{
    /**
     * @Route("/", name="home")
     * @return \Symfony\Component\HttpFoundation\Response
     */
    public function homepage(){...}
}

#src/Controller/Main/HomeController.php
class HomeController extends AbstractController
{
    /**
     * @Route("/", name="home")
     * @return \Symfony\Component\HttpFoundation\Response
     */
    public function homepage(){...}
}

Поэтому я добавляю следующие конфигурации в config / маршрутыФайл .yaml:

#config/routes.yaml
main:
    host: "localhost"
    resource: ../src/Controller/Main
    type: annotation
admin:
    host: "admin.localhost"
    resource: ../src/Controller/Admin
    type: annotation

То, что я хочу:

  1. Я запускаю сервер с помощью этой команды:

bin /консольный сервер: запуск

результат исключен:

  • доступ к http://admin.localhost/ => метод домашней страницы в src / Controller / Admin / HomeController

  • доступ к http://localhost/ => метод домашней страницы в src / Controller / Main / HomeController

Но только http://admin.localhost/работает и http://localhost/ получает 404 со следующим сообщением: «Добро пожаловать в Symfony 4.2.2»

Если я меняю порядок в файле yaml:

#config/routes.yaml
admin:
    host: "admin.localhost"
    resource: ../src/Controller/Admin
    type: annotation
main:
    host: "localhost"
    resource: ../src/Controller/Main
    type: annotation

http://localhost/ работает и http://admin.localhost/ получает 404 с приветственным сообщением

Как я могу запустить поддомен , используя встроенный веб-сервер .

1 Ответ

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

Я отлаживаю с помощью этой командной строки

php bin / console debug: router

Из-за того же имени только последний прочитал:

@Route("/", name="home")

Я просто изменил имя администратора на

@Route("/", name="admin-home")

Теперь это работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...