Symfony 3网络前端控制器与环境

时间:2017-06-21 20:37:16

标签: php symfony frameworks

Symfony 3使用两个Web前端控制器app.php和app_dev.php。如何更改它以使用一个控制器使用env变量来设置env(prod,dev)和调试。

我试图删除app_dev.php,但symfony尝试加载该文件。

也许这不是这样做的方法,只是学习symfony。欢迎提出其他建议。

1 个答案:

答案 0 :(得分:0)

前端控制器文件app.phpapp_dev.php分别作为proddev的示例存在。正如文档(http://symfony.com/doc/3.4/configuration/environments.html)所示,您将要为生产部署删除其中一个,或者只是为每个环境创建一个自定义前端控制器,并拥有apache或{ {1}}配置仅加载相应的文件以启动Symfony。

您将在文件中看到环境已声明并传递,是否应启用调试。

nginx

相比之下,生产:

//dev environment, with debug enabled
$kernel = new AppKernel('dev', true);

如果您想要一个带有一些动态元素的控制器,我建议在//prod environment, debug disabled $kernel = new AppKernel('prod', false); 实例化之前删除app_dev.php并使用app.php自定义逻辑来执行您想要的操作。