【发布时间】:2020-03-05 03:27:00
【问题描述】:
这是我的第一篇文章,所以我会尽量理解。
我从 symfony 开始,有一个问题我一个人解决不了。
这是我的控制器,我正在使用 WAMP。 当我的 Url 是“mysite.local”时,它可以正常工作,它会告诉我它应该做什么(感谢 home() 函数)。但是当我的 Url 是“mysite.local/hello”时,出现以下错误。
找不到
在此服务器上找不到请求的 URL。
Apache/2.4.41 (Win64) PHP/7.4.0 服务器在 mysite.local 端口 80
我想这是正常的,因为我没有创建任何名为“hello”的文件,但它正在按照我所遵循的格式工作。
你能帮帮我吗?谢谢
<?php
namespace App\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class HomeController extends AbstractController
{
/**
* @Route("/hello", name="hello")
*/
public function hello()
{
return new Response("Bonjour ...");
}
/**
*@Route("/", name="homepage");
*/
public function home(){
$prenoms = ["Lior" => 17 , "Joseph" => 12, "Anne" => 55];
return $this->render("home.html.twig",
[
'title' => "Bonjour a tous :)",
'age' => "31 ",
'tableau' => $prenoms,
]);
}
}
?>
【问题讨论】:
-
你好。你有为
hello定义的路线吗?通常在 MVC 框架中,路由调用控制器的函数。如果mysite.local有效,那是因为路由/映射到控制器的home()函数。错误消息表明/hello不存在。请检查 -
@kendrick 您的路线定义代码在哪里?
标签: php symfony routes http-status-code-404 symfony4