我使用命令 php app/console generate:bundle
创建了一个包这在 /app/AppKernel.php
中添加包还有 /app/config/routing.yml
.如果我尝试访问 URL http://devserver/web/app_dev.php/bank_homepage
我收到了 404 错误。我查了/app/logs/prod.log
看看这个:
[2013-07-29 13:41:27] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "No route found for "GET /web/app_dev.php/bank_homepage"" at /var/www/html/app/cache/prod/classes.php line 1880 {"exception":"[object] (Symfony\Component\HttpKernel\Exception\NotFoundHttpException: No route found for \"GET /web/app.php/bank_homepage\" at /var/www/html/app/cache/prod/classes.php:1880, Symfony\Component\Routing\Exception\ResourceNotFoundException: at /var/www/html/app/cache/prod/appProdUrlMatcher.php:1222)"} []
我做错了什么?
这是我的
/app/config/routing.yml
bank:
resource: "@BankBundle/Resources/config/routing.yml"
prefix: /
....
这是我的
/src/BankBundle/Resources/config/routing.yml
bank_homepage:
pattern: /hello/{name}
defaults: { _controller: BankBundle:Default:index }
requirements:
_method: GET
编辑一些测试
我将 URL 从
http://devserver/web/app_dev.php/bank_homepage
更改为至 http://devserver/web/app_dev.php
然后错误更改为:[2013-07-29 14:22:15] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "No route found for "GET /web/app_dev.php"" at /var/www/html/app/cache/prod/classes.php line 1880 {"exception":"[object] (Symfony\Component\HttpKernel\Exception\NotFoundHttpException: No route found for \"GET /web/app_dev.php\" at /var/www/html/app/cache/prod/classes.php:1880, Symfony\Component\Routing\Exception\ResourceNotFoundException: at /var/www/html/app/cache/prod/appProdUrlMatcher.php:1222)"} []
这实际上是相同的
PS:我检查(这个)[没有找到“GET/portfolio”的路线,但这对我不起作用
最佳答案
将您的路径更改为“bank_homepage”:
bank_homepage:
path: /bank_homepage
defaults: { _controller: BankBundle:Default:index }
requirements:
_method: GET
确保您处于开发模式:
php app/console cache:clear --env=dev
关于symfony - 错误 : "No route found for "GET/web/app_dev. php"",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17931384/