網頁出現HTTP 400 Bad Request,Size of a request header field exceeds server limit.原因及解決方法

有時瀏覽網頁時會出現
Bad Request
Your browser sent a request that this server could not understand.
Size of a request header field exceeds server limit.
意思爲:錯誤的請求。您的瀏覽器發送一個請求,該服務器無法理解。一個請求頭域的大小超過服務器的限制.

一般情況爲cookie設置的太多了,導致請求頭信息過大。(PS:T不錯的phpQ扣峮276167802,驗證:csl


這個跟服務器的設置有關

LimitRequestLine指令用來限制接收客戶端發送的HTTP請求行的字節數,允許服務器管理員增加或減少客戶端HTTP請求行允許大小的限制。因爲請求行包括HTTP方法、URI、協議版本,所以LimitRequestLine指令會限制請求URI的長度。服務器會需要這個值足夠大以裝載 它所有的資源名,包括可能在GET請求中所傳遞的查詢部分的所有信息。


LimitRequestFieldSize指令用來限制客戶端發送的請求頭的字節數,允許服務器管理員增加,或減少HTTP請求頭域大小的限制。一般來 說,服務器需要此值足夠大,以適應普通客戶端的任何請求的頭域大小。一個普通頭域的大小對於不同的客戶端來說是有很大差別的,一般與用戶配置他們的瀏覽器 以支持更多的內容協議密切相關。


LimitRequestLine和LimitRequestFieldSize指令給了服務器管理員更大的可控性,以控制客戶端不正常的請求行爲。這有助於避免某些形式的拒絕服務攻擊。默認值爲“8190”。


解決辦法:
1、技術人員可以修改配置文件
在Apache的httpd.conf配置文件中添加
LimitRequestLine 40940
LimitRequestFieldSize 40940

2、用戶可以清除瀏覽器的cookie記錄


希望大家看到這篇文章能覺得有用,謝謝已閱者。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章