2012-09-13 111 views
1

作为一个前奏,我知道HTTP 500是什么,我知道如何解决它们。PHP:500错误到错误页面

在PHP 5.3上,我正在运行show_errors关闭的生产环境。当有致命错误时,用户会收到一个普通的白色500页作为回应。我试图创建一个500错误页面,以防有任何错误;只是这样更方便用户使用。

我曾经是能够做到

ErrorDocument 500 500.html 

它似乎并不然而,要工作了, - 甚至以为我404

ErrorDocument 404 404.html 

工作正常。

很想看到解决方案 - 谢谢你的时间。

+1

我相信'ErrorDocument 500'只会在* apache将请求传递给PHP之前发生500错误*时才起作用。我可能是错的。 –

+0

@FrankFarmer最有可能 - 好点。 – Jonathan

回答

3

致命错误本身不会产生500个错误,它们通常会返回200个空白页(如果没有输出在错误发生时刷新到浏览器)。此外,这对你无能为力,因为当PHP发生错误时,Apache将不再参与其中。

也许你可以注册一个关闭函数发送500头(得到500的结果)并显示你想要显示的内容。

+0

不错的主意,但它看起来并不像关闭功能中的新标题将起作用。我会做一些进一步的研究。谢谢你的时间。 – Jonathan

+0

我不认为这实际上可能没有再次启用错误,所以我只是将其标记为接受的答案。 – Jonathan