【问题标题】:Page would not load when I use app.php (Symfony 2.7)当我使用 app.php (Symfony 2.7) 时页面无法加载
【发布时间】:2016-01-13 06:12:34
【问题描述】:

所以我一直在学习 Symfony,我一直在使用 app_dev.php 来查看我的页面,这很好用。

我偶然使用了 app.php,这给了我一个 404(完整的错误信息见下文)。

我的配置文件仍然没有改变。我所做的唯一更改是允许对 app_dev.php 进行远程访问。我注释掉了检查 HTTP 客户端是否来自本地主机的部分。只是因为我的 Mac 上没有设置开发环境,而我使用的是我们拥有的开发/测试环境。

有什么想法我可能错了吗?谢谢! :)

ps。我可以提供更多我的配置文件的 sn-ps 告诉我哪个。

我的控制器:

<?php
// src/AppBundle/Controller/DirectoryController.php

namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;

class DirectoryController extends Controller {
    /**
     * @Route("/directory/view/{labs}", defaults={"labs" = "*"})
     */
    public function viewAction($labs) {
        return $this->render(
                "directory/view.html.twig"
                );
    }
}

我的树枝文件:

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

{% block title %}My cool blog posts{% endblock %}

{% block body %}
    <h2 class="entity">TEST</h2>
{% endblock %}

错误信息:

Oops! An Error Occurred
The server returned a "404 Not Found".
Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused. 

【问题讨论】:

    标签: symfony


    【解决方案1】:

    您需要预热缓存,以便它接收新路由:app/console cache:clear --env=prod。 Symfony 会自动为开发环境 (app_dev.php) 执行此操作,但不会在生产环境中执行此操作,因为它会产生性能影响。

    【讨论】:

      【解决方案2】:

      您确定您的.htaccess 文件已将DirectoryIndex 设置为app.php?如果是这种情况,则您尝试打开的 URL 不必包含该 URL。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-06
        • 2019-02-05
        • 1970-01-01
        • 1970-01-01
        • 2017-09-19
        • 2012-11-27
        相关资源
        最近更新 更多