Symfony 3.3.6添加控制器/视图获取404 - Cloud9.io

时间:2017-08-10 14:19:22

标签: php symfony

我在C9.IO上安装并设置了Symfony 3.3.6

当我运行应用程序时,它会加载并将我带到默认页面。 enter image description here

但是我在添加自定义控制器和视图时遇到问题。我已按照所有说明操作,但在尝试访问页面/路径时遇到404错误。这是我通过https://symfony4-XXXX.c9users.io/test

访问此页面的网址

我已在目录TestController.php中添加了名为src/Controller/TestController.php的控制器。

在此控制器中,我有以下代码:

namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;

class TestController extends Controller
{
    /**
     * @Route("/", name="test")
     */
    public function testAction(Request $request)
    {
        // replace this example code with whatever you need
        return $this->render('test/test.html.twig', [
            'base_dir' => realpath($this->getParameter('kernel.project_dir')).DIRECTORY_SEPARATOR,
        ]);
    }
}

我添加了视图&test ;.twig'到目录' app / Resources / views / test / test.html.twig'

此文件中的代码为:

{% extends 'base.html.twig' %}

{% block body %}
    <p>This is my test page.</p>
{% endblock %}

我的routing.yml文件设置为:

app:
    resource: '@AppBundle/Controller/'
    type: annotation

为什么我无法访问此页面?我一直收到404错误。

日志只显示:

  

[2017-08-10 13:00:13] request.ERROR:未捕获PHP异常   Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException:&#34; No   找到&#34; GET / test&#34;&#34;在   /home/ubuntu/workspace/var/cache/prod/classes.php第4173行   {&#34;例外&#34;:&#34; [对象]   (Symfony的\元器件\ HttpKernel \异常\ NotFoundHttpException(代码:   0):找不到\&#34; GET / test \&#34;在   /home/ubuntu/workspace/var/cache/prod/classes.php:4173,   Symfony的\分量\路由\异常\ ResourceNotFoundException(代码:   0):at   /home/ubuntu/workspace/var/cache/prod/appProdProjectContainerUrlMatcher.php:47)"}   []

1 个答案:

答案 0 :(得分:2)

更改注释

/**
 * @Route("/", name="test")
 */

通过这个

/**
 * @Route("/test/", name="test")
 */