Yii - '白屏死机',调试提示


Yii - 'white screen of death', debugging tips

我有一个运行Yii应用程序的暂存服务器,现在给出了一个'白屏死机'。我看不到任何东西被输出到屏幕(甚至源代码当'查看源代码'),本地相同的代码运行没有任何问题。

谁能建议一个好的例程来调试Yii应用程序中的"白屏死机"?

在yii中获得空白屏幕主要是因为error_reporting关闭了。把

error_reporting(-1);
ini_set('display_errors', true);
在index.php中的

应该得到你的输出。

请注意,当您没有任何输出时,您总是可以查看application.log和apaches error.log中的信息。

这是为Yii2

我发现代码在vendor/yiisoft/yii2/BaseYii.php中自动加载方法($className)失败。执行失败:

包括美元类文件;(第293行)

在我的例子中,原因是函数方法名声明了两次。

您可能有兴趣知道,通过在上面https://stackoverflow.com/a/25139283/3125602的Chris推荐的代码前面添加命令,您可以发现原因(Yii2通过它自己的错误处理来抑制)。如果您过早地在代码中引入它们,它们将被Yii2的错误处理设置覆盖。

这是一个相当简单的问题,发生在脚本达到PHP内存限制或插件或主题冲突期间。

解决方案:

  1. 增加内存限制:

由于这被认为是原因之一,因此建议提高PHP内存限制。通过FTP编辑你的wp-config.php文件,添加以下代码行:define(' WP_MEMORY_LIMIT ', ' 64 ');

这将内存限制增加到64M。在此之前,您可能需要联系您的主机,因为有些主机不允许您这样做。

  • 通过FTP连接到您的站点,并将wp-content/plugins文件夹重命名为plugins_old以停用所有插件。

    这里是臭名昭著的"白屏死机"问题的详细答案。以后再谢谢我:)

    https://www.perceptionsystem.com/blog/wordpress-errors-solution/