【发布时间】:2018-07-08 10:10:00
【问题描述】:
https://symfony.com/doc/current/setup.html 指示您运行:
composer create-project symfony/website-skeleton my-project
而在http://symfony.com/doc/current/quick_tour/the_big_picture.html 你被指示运行:
composer create-project symfony/skeleton quick_tour
我都做了。使用 symfony/website-skeleton 我在浏览器中收到一条错误消息:No route found for "GET /"
使用 symfony/skeleton 我确实得到了一个Welcome to Symfony 4.0.4 页面。
两者之间有什么区别,为什么要使用其中一个而不是另一个?
【问题讨论】:
-
实际上,昨天我也发生了同样的事情。我认为他们的文档需要更新。
-
它们都没有定义默认的 GET / 路由。如果您一直向下查看 HTTPKernel 类,您会看到如果路由系统本身没有初始化,则会生成一个默认的欢迎页面。因此,一个干净的骨架安装为您提供了一个默认页面。但是,一旦您安装了几乎任何其他捆绑软件,就会出现找不到路由的错误。只是那些恼人的怪癖之一。
-
严格来说,欢迎信息是在 matchRequest 抛出 NoConfiguration 异常时在 http-kernel RouterListener 中生成的。