白屏死机!

2021-12-26 00:00:00 error-handling php codeigniter wsod

在调试安装到新开发环境中的 codeigniter 应用程序后,当我看到白屏没有更多可用内容时,我开始感到害怕.我已经能够解决导致此问题的每一个错误,但它认真对待了太长时间.

After debugging a codeigniter app that were installed into a new development environment, I have started to freak out when seeing white screens with nothing more available. I have been able to solve each and every one of the errors that have caused this, but it have taken seriously way too long time.

PHP error_reporting(E_ALL) &display_errors", 1 也设置好了.我什至安装了 Xdebug 以希望获得更多输出,但没有.我的日志设置也有效,但没有写入日志.

PHP error_reporting(E_ALL) & display_errors", 1 is set as well. I even installed Xdebug in hope of getting more output, but no. My logging settings are also working, but nothing is written to the log.

有没有办法打印出一些信息而不是完整的白屏?它肯定会缩短我花在解决导致此问题的最终错误上的时间?

Is there a way to get something informative printed out instead of a complete white screen? It would certainly shorten my time spent on solving the eventual errors that causes this?

非常感谢!

参考:为什么 Code Igniter 给我一个白页?

推荐答案

我发现,自从我提出问题以来,似乎没有什么可以确保总是用 PHP 输出错误,这似乎在这里抛出白屏在那里.无论 PHP 的 ini 设置如何.

I've found out, since the time of my question, that nothing seems to ensure that errors are always outputted with PHP, which seems to throw white screens here and there. Regardless of PHP's ini-settings.

我发现最好的解决方法是使用以下行来确保将错误记录放入应用程序易于访问和监控的文件中:

I've found out that the best workaround however is to use the following line to ensure that error logging is put into a file easily accessed and monitoredby the application:

ini_set('error_log', MYPATH .'logs/errorlog.log'); 

据我测试,当出现白屏时 - 它也会记录到此错误日志中.似乎是了解出现问题时会发生什么的最简单方法.

As far as I've tested it, when white screens appear - it also gets logged into this errorlog. Seems to be the easiest way to know what happens when things go wrong.

相关文章