網頁返回白頁時發出警報的最佳實務?

網頁返回白頁時發出警報的最佳實務?

我們正在嘗試為返回死亡白頁的網路應用程式設定監控(zabbix)。應用程式基於 PHP。

據我所知,白屏死機可能是由許多問題、記憶體問題、語法錯誤等引起的。

所以我想問,是依靠網頁伺服器返回 50x 程式碼更好,還是有可能(以某種方式)獲得返回程式碼 200,但渲染頁面為空(白色)?

答案1

依賴 HTTP 狀態碼是最佳且常用的做法。如果 PHP 遇到嚴重錯誤,它應該關閉並顯示適當的 HTTP 錯誤代碼。

HTTP 狀態碼 200 的嚴重錯誤是虛假聲明,應避免。即使設計良好的 404 頁面也應該使用 HTTP 錯誤代碼 404,而不是其他任何內容。

使用 HTTP 錯誤代碼,您可以:

  • 使用現有的線上和本地監控工具來監控您的網站和應用程式

  • 允許瀏覽器根據給定的錯誤做出反應

  • 告訴 Google 和其他搜尋引擎您的網站中有錯誤而不是新內容

  • 配置 Nginx 以顯示正確的 HTML,並在 PHP 因致命錯誤而關閉時保留錯誤代碼

答案2

如果要正確監視網站,您應該識別 Web 內容中出現的一個或多個字串,並讓監視器檢查這些字串是否存在於 HTTP 回應中。

如果您正在執行收集和處理表單資料的 Web 應用程序,則應建立一個互動式監視器來處理表單並確認表單傳回正確的結果。您可以透過多種方式做到這一點。過去我將 Jmeter 與 Nagios 整合來執行此操作,但您也可以使用 Pingdom 等線上​​服務。

我認為依賴 HTTP 狀態碼並不是一個好的做法。 PHP 中的資料庫錯誤仍可能傳回 HTTP 200 狀態。同樣,被破壞的網站可能會返回 200 狀態代碼。

https://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/jmeter-inspiration-plugin-II/details

https://www.pingdom.com/

相關內容