跳到主要內容

Nginx Reverse Proxy 自訂錯誤頁面

今天收到長官指派任務,由於資安要求,在網站受到DDoS攻擊或故障時必須顯示靜態錯誤頁面,而不是IIS的錯誤訊息。

我測試後發現在這個ASP.Net網站會自行處理 500 Server Error,再加上 IIS 預設錯誤與 IIS 無回應等都需要處理,故在上一層的Nginx Reverse Proxy裡設定預設錯誤頁面為較佳處理方式。

在Nginx主機裡  nginx.conf 設定:

40x錯誤表示 page not found, 50x 錯誤是Server Error; 設定中 /index.html 是預設首頁, /50x.html 是靜態錯誤頁面。

在重導向的目錄需重新設定 error_page,並且要強制啟用 proxy_intercept_errors on;


如此一來便可在無需人為介入的情況下,在對外網站SageFrame發生錯誤或因DDoS攻擊等反應timeout時,會自動導向到預設的靜態頁面 50x.html 。

參考資料:

題外話,這個錯誤畫面我是用 Bing 自動產生 HTML,之後嫌單調又請Bing產生可愛的維護中圖片,效果非常滿意;看來我被AI取代的日子不遠了。



留言

這個網誌中的熱門文章

自然人憑證讀卡機驅動程式

鳥毅用的是第一代的自然人憑證讀卡機,EZ100PU(後來有同事買EZmini可以讀SIM卡似乎更好),每年報稅時用一次。 本來只是要申請些政府業務,一時之間找不到光碟,沒想到在 驅動程式下載 居然看到Linux和Mac的驅動程式,剩下的就是政府單位的網頁和程式應該改版了吧!!!

在Windows Server設定L2TP over IPSec VPN

簡單地說,macOS Sierra與iOS 10發表後,大家忽然發現Apple不再支援PPTP,所以一定得設定其他的VPN型態。若不要另外裝client,用L2TP是最方便的,SSL VPN雖然好,但若沒有安裝Agent要連線到任一電腦或是非網頁服務還是挺麻煩的。

DBeaver 介面語言

DBeaver是我個人頗常用的一套跨平台Database管理工具,最近升級後發現Windows版本居然變成簡體中文,而且無法切換為英文。