咦!奇怪, 怎麼網頁用一用就出現以下的畫面了, 到底是怎麼回事啊?
不用慌張, 讓我們仔細看看中間的「HTTP ERROR 431」,看到這樣的錯誤代碼, 相信心中隱約已經知曉我們的請求標頭內容太大了, 超過限制導致這樣的問題發生, 讓我們先詳細查閱這樣的錯誤訊息吧!
📚 https://www.rfc-editor.org/rfc/rfc6585#section-5
我們可以看到這個規格指出, 伺服器不願意處理過大的標頭欄位內容, 那通常發生這樣的狀況, 相信企業的IT端已經雞飛狗跳了, 我們只能想一個快速解決的方法來渡過此關卡, 直覺告訴我們只要💰 加錢(加大限制額度)就能夠通過了吧!, 因此我們就來試著找找看要怎麼增加限額。
讓我們來翻翻Nodejs官方文件, 找找看是否有我們需要的答案…
這邊告訴我們預設的限額為16KiB, 因此在壓力時程極大的情境之下, 我們只好先暫時增加限額。
node --max-http-header-size=xxxxx
NODE_OPTIONS='--max-http-header-size=xxxx'
很多狀況都會發生在我們尚未認知完全的狀況底下, 不過也沒辦法, 這個世界就是不斷的探索與修正, 沒有百分之百的程式與架構, 都是及格後再慢慢修正, 讓我們的系統與架構越來越好, 這問題也牽涉到網路層面, 尤其加上Proxy之後, 究竟是瀏覽器環節還是Proxy環節呢? 這過程都是需要我們耐心排查與閱讀文檔才能夠逐步解決的。