Symfony2错误显示在Production mod中

时间:2016-02-20 09:54:00

标签: php symfony production-environment

我使用此cmd Line

在symfony 2中将我的应用程序移动到生产模式

php app/console cache:clear --env=prod --no-debug

在我的“web / app.php”文件中

$kernel = new AppKernel('prod', false);

我将false值更改为true

$kernel = new AppKernel('prod', true);

但我的应用程序仍然给我页面错误,如 DEV mod ;例如,当我尝试访问错误的链接时,请获取此页错误

enter image description here

Normaly页面错误应该是这样的 enter image description here

2 个答案:

答案 0 :(得分:2)

首先,验证应用的.htaccess目录中是否存在web 否则,从here获取并创建它。

打开它并检查网址是否已重定向到/app.php/ 如果您看到包含app_dev.php的行,请将其更改为app.php

例如,如果您看到以下行:

RedirectMatch 302 ^/$ /app_dev.php/

将其更改为:

RedirectMatch 302 ^/$ /app.php/

然后,验证您的web/app.php看起来像default

此外,您提供的行应为:

new AppKernel('prod', false')

最后,在您的产品环境的虚拟主机中,请确认您没有指定index之类的任何app_dev.php。 默认.htaccess为您完成。

vhost可以如下:

<VirtualHost *:80>
  ServerName your.domain
  DocumentRoot /var/www/path/to/project/web
  <Directory "/var/www/path/to/project/web">
    AllowOverride All
    Require all granted
  </Directory>
</VirtualHost>

希望您的问题来自其中一个常见错误。

答案 1 :(得分:1)

  • 检查您的虚拟主机(或.htaccess)是否指向app.php文件
  • 清除缓存手动删除缓存文件夹的内容

    请注意,内核的第二个参数必须为false,否则无论如何都会显示消息错误。

    $ kernel = new AppKernel('prod',false);