2012-09-13 129 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