Symfony 2:dev to pro =空白页面

时间:2014-03-26 22:43:11

标签: php symfony production

先,我带你去原谅我的英语。 我用Symfony创建了一个网站,在本地运行良好。 (dev和prod)。 但是一旦我上线开发版本就可以使用,但是prod版本会显示一个空白页面。 Lighttpd不会给我错误。 PHP没有给我错误。 缓存和日志是可写的。

我什么都不懂。

4 个答案:

答案 0 :(得分:2)

好的,这是非常不受欢迎的情况,因为你需要逐个压缩bug。它可能像缺少php模块或一些主要的httpd误配置一样良性。

应该对这个问题有所了解的一些步骤:

  1. 启动Terminal(您确实拥有ssh访问权限,对吗?)
  2. 检查日志(httpdsymfony
  3. httpd log:

    tail -f /var/log/httpd/error_log
    

    ...并刷新您的信息页

    Symfony的

    tail -f /path-to-your-symfony-app/app/logs/prod.log
    

    ...再次刷新页面

    在评论中,您说您遇到了HTTP500错误。那是Apache的还是Symfony的HTTP500

    如果您没有ssh访问权限,请上传您的app_dev.php并直接运行。请务必将您的IP地址添加到允许列表(在文件中)

答案 1 :(得分:1)

777

中更改对缓存和日志文件夹的权限
chmod 777 cache/ log/ -R
php symfony cc

答案 2 :(得分:1)

正如documentation所说:

您可能会看到空白页面或错误页面,而不是欢迎页面。这是由目录权限配置错误引起的。根据您的操作系统,有几种可能的解决方案。所有这些都在“设置权限”部分中进行了解释。

然后你应该关注these steps

  1. rm -rf app/cache/*
  2. rm -rf app/logs/*
  3. HTTPDUSER=' ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1'
  4. sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:'whoami':rwX app/cache app/logs
  5. sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:'whoami':rwX app/cache app/logs

答案 3 :(得分:0)

我按照official docs

中的指导进行了部署

在我的情况下,部署之前symfony的更新不是具有旧Bundle的BC,所以clear:cache --env = prod给出了一些错误。所以我做的是手动删除prod缓存然后清除:缓存与prod环境并且它工作:所以恢复:

#rm -rf app/cache/prod/*  #removes only production cache
rm -rf app/cache/   #removes prod and any other stage cache
php app/console cache:clear --env=prod