解决“死亡白屏”的有效方法是什么


18

几次我都在Joomla网站的前端是一个没有内容的空白屏幕,有时也被称为“死亡白屏”。

这是在网站移动后发生的,并且在以前运行的网站上也意外发生了。

假设可能有各种不同的原因,什么是解决和解决此问题的有效方法?

Answers:


14
  1. 将错误报告更改为最大

    • 登录到管理区
    • 转到全局配置->服务器

    首先,您需要将错误报告设置为最大

  2. 在FTP中编辑文件

    • 通过FTP登录到您的Joomla站点文件。

    • 找到位于网站根目录中的index.php文件。

    • 打开index.php并在文件的第一行之后直接添加以下代码:

      ini_set('display_errors', TRUE); error_reporting(E_ALL); 
      
  3. 编辑PHP.ini文件

    在PHP.ini文件中,您需要更改以下两个设置:

    • 将显示错误设置为开: display_errors = On

    • 设置错误报告: error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT

  4. 检查您的服务器日志

    最后,您将获得一条错误日志,其中包含显示错误路径和错误原因的错误消息

参考:http : //www.ostraining.com/blog/joomla/white-screen-of-death/


2
除了上述内容外,我建议您在浏览器中安装并打开Firebug控制台。完成后,重新访问死亡白屏。您有时会对发现的内容感到惊讶。
TryHarder 2014年

1
另一件事,我通常会发现“死亡白屏”与.htaccess文件有关。
TryHarder 2014年

1
在极少数情况下,可能是因为正在加载的文件使用defined('FOO') or die();一行,但FOO未定义。
Andrew Eddie

10

这些其他答案可能会带您找到答案,但是我注意到,作为一个小问题,有一件事是有些插件自行设置了error_reporting,并且可以覆盖Joomla的错误报告,因此解决此问题的另一种方法是在某个位置禁用扩展直到网站加载为止的时间,主要是插件。

手动检查其他页面是否加载?如果确实这样做,则仅在首页上加载的模块或组件将帮助您隔离它。同样,更新扩展也是一个好主意,如果它在您的环境是PHP 5.2之前可以运行,并且当您移至5.3或5.4时,差异会导致一个重大错误。

通常,只要积极维护扩展,扩展的更新就可以解决该问题。尽管在某些情况下它可能是您的模板。


1
我也以相反的方式执行此操作,关闭所有扩展,然后将它们一个接一个地打开,直到站点中断为止。相同的想法。
David Fritsch 2014年

1
有时一次将它们全部关闭可能会导致中断。并非总是如此,但是它只发生一次,因此一次解决是我们的解决方案。
Jordan Ramstad 2014年


2

似乎没有人提到禁用输出缓冲-因此,我在这里将其提及...

输出缓冲对于调试非常麻烦,即使将错误报告设置为最大并添加php.ini条目,它仍然无法工作(您仍然看不到错误)。可以通过仅按此处output_buffering = off所述将其添加到.htaccess文件中来禁用它(请注意,这可能并非在所有环境中都有效)。

此外,导致空白页的另一个问题是主机本身可能已在其末端禁用了错误报告功能-在这种情况下,必须与主机联系,因为许多主机不允许覆盖其自身的设置。


1

如果您打开了SEF URL,并且正在使用Joomla!的.htaccess文件,请确保在服务器上启用了mod_rewrite。

在许多情况下,.htaccess文件是罪魁祸首,因此,假设启用了mod_rewrite,我建议备份.htaccess文件,然后删除原始文件(或重命名),以查看是否有区别。

我还建议您在浏览器中安装并运行Firebug控制台。它通常会提示您可以用来跟踪问题(许多不同的问题都是如此)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.