Symfony2和生产环境 - 总是在链接中显示app_dev

时间:2014-07-18 14:55:14

标签: symfony nginx production-environment

我有一个运行nginx的symfony2项目,问题是当访问prod环境时,所有链接仍然是app_dev.php。

以下是我的配置文件:

app.php

<?php

require_once __DIR__.'/../app/bootstrap.php.cache';
require_once __DIR__.'/../app/AppKernel.php';

use Symfony\Component\HttpFoundation\Request;

$kernel = new AppKernel('prod', false);
$kernel->loadClassCache();
$kernel->handle(Request::createFromGlobals())->send(); 

twig文件中的链接以这种方式调用:

路由名称:user_login,在twig中:user_login_path()

问题出在哪里? Nginx的?

1 个答案:

答案 0 :(得分:1)

您应始终使用path('route_name')来生成链接或操作。您正在使用的功能(枝条扩展类型)似乎是错误编码和服务器相关的。但它没有Symfony本身。

您有多种选择:

  • 最干净:用href函数替换每个actionpath,...
  • A(也许)更快的一个:找到自定义树枝扩展并让它工作(更有可能在src/Acme/MyBundle/Twig/MyExtension.php中)
  • 快速而肮脏的一个:用app_dev.php将每个app.dev网址重写为.htaccess(根本不推荐......但是......)