2014-06-28 44 views
0

讓我們假設應用程序中發生了一些事情,如拋出一些異常。作爲一名開發人員,我希望看到它,但我不想讓典型的網站用戶也看到它(它暴露了路徑和內容)。在活動網站上處理錯誤消息的最佳方法

我注意到,一些網站被加密的錯誤消息,並且用戶將看到:

Oh shit something went wrong. Give this code to the site admin: 

*&#BFO*&@BF#*&@BH#OGF*@B#(G*O&GBO*@#BG*@#BG*@BO#GO*@B#(GP 
*O&QBOF*[email protected]#GOF*&[email protected]#G*&OGB*@#O&BG*&@#BG(P*@#[email protected]#FKLJ 
*@UB#[email protected]#B*FB*OBF*O&BW#O*FBWO*G#B&*OGB*W#BGLKJWBGLKJBGLKJ 

或類似的東西。 然後開發人員可以解密並看到消息。

這是一個好主意還是壞主意?

有沒有更好的方法?

回答

1

那麼加密錯誤信息通常是一個好主意,因爲它可能包含有關黑客可能利用的安全問題的信息。

在另一方面,終端用戶更可能表現出的站長很短的錯誤信息(如MySQL: Duplicate entry <whatever> for key <whatever>比一堆隨機碼,他們不明白。

我通常添加自動錯誤報告和寫的東西「出現錯誤,網站管理員已收到通知,並會盡快解決問題,如果問題仍然存在,請將此代碼發送給網站管理員(鏈接到錯誤報告表單)。」。

錯誤消息以及$_SERVER的轉儲使用ASCII位移和<small>標籤進行編碼以減小尺寸和可怕性。

1

您可以爲您的特定會話設置一個cookie,並使用它顯示和隱藏錯誤,例如,檢查用戶是否已登錄,是否登錄,是否有權查看錯誤。

+0

我更喜歡在cookie中使用多個會話組合,因爲cookie數據可以更容易地被客戶端操作 –

1

你的方法依賴於用戶太多。不如把它說 類似:

出現錯誤和應用程序想 發送細節網站管理員。 [關於潛在用戶數據的信息曝光]好嗎? [是] [否]

您不需要向用戶顯示詳細信息。

相關問題