錯(cuò)誤的請(qǐng)求,您的瀏覽器發(fā)送一個(gè)請(qǐng)求,該服務(wù)器無(wú)法理解。
一個(gè)請(qǐng)求頭域的大小超過(guò)服務(wù)器的限制.
簡(jiǎn)單來(lái)說(shuō),這是服務(wù)器內(nèi)部錯(cuò)誤,你可以換個(gè)網(wǎng)站訪問(wèn)
這句話大概是說(shuō):你的瀏覽器向未知服務(wù)器發(fā)送了一個(gè)請(qǐng)求。
這應(yīng)該不會(huì)是病毒,感覺更像某個(gè)瀏覽器的控件!
錯(cuò)誤的請(qǐng)求
您的瀏覽器發(fā)送一個(gè)請(qǐng)求,這個(gè)服務(wù)器無(wú)法理解。
一個(gè)請(qǐng)求頭字段的大小超過(guò)服務(wù)器的限制。
另一個(gè)朋友的提示
這段時(shí)間在把程序部署到apache2服務(wù)器,在調(diào)試程序的時(shí)候經(jīng)常出現(xiàn)
Your browser sent a request that this server could not understand.
Size of a request header field exceeds server limit.
開始是以為P3P協(xié)議設(shè)置cookie的問(wèn)題,查閱了P3P的文檔,沒有相關(guān)的條目。經(jīng)過(guò)不懈的搜索,終于發(fā)現(xiàn)原來(lái)是Apache中資源使用限制的設(shè)置問(wèn)題。
技術(shù)背景:
Apache中“資源使用限制”就是要限制用戶對(duì)網(wǎng)站特定資源(如目錄、服務(wù)器硬件等)的訪問(wèn)。相關(guān)指令包括:LimitRequestBody、LimitRequestFields、LimitRequestFieldSize、LimitRequestLine、RLimitCPU、RLimitMEM、RLimitNPROC和ThreadStackSize。LimitRequest*系列指令用來(lái)限制Apache在讀取客戶端請(qǐng)求的過(guò)程中使用的資源數(shù)量。通過(guò)限制這些值,可以減輕某些拒絕服務(wù)(DOS)攻擊;RLimit*系列指令限制被Apache子進(jìn)程所派生的進(jìn)程使用的資源數(shù)量,通常這些指令用來(lái)控制CGI腳本和SSI exec命令所使用的資源;ThreadStackSize指令在某些平臺(tái)上用來(lái)控制堆棧大小。
LimitRequestLine
LimitRequestLine指令用來(lái)限制接收客戶端發(fā)送的HTTP請(qǐng)求行的字節(jié)數(shù),允許服務(wù)器管理員增加或減少客戶端HTTP請(qǐng)求行允許大小的限制。因?yàn)檎?qǐng)求行包括HTTP方法、URI、協(xié)議版本,所以LimitRequestLine指令會(huì)限制請(qǐng)求URI的長(zhǎng)度。服務(wù)器會(huì)需要這個(gè)值足夠大以裝載它所有的資源名,包括可能在GET請(qǐng)求中所傳遞的查詢部分的所有信息。
LimitRequestFieldSize
LimitRequestFieldSize指令用來(lái)限制客戶端發(fā)送的請(qǐng)求頭的字節(jié)數(shù),允許服務(wù)器管理員增加,或減少HTTP請(qǐng)求頭域大小的限制。一般來(lái)說(shuō),服務(wù)器需要此值足夠大,以適應(yīng)普通客戶端的任何請(qǐng)求的頭域大小。一個(gè)普通頭域的大小對(duì)于不同的客戶端來(lái)說(shuō)是有很大差別的,一般與用戶配置他們的瀏覽器以支持更多的內(nèi)容協(xié)議密切相關(guān)。
LimitRequestLine和LimitRequestFieldSize指令給了服務(wù)器管理員更大的可控性,以控制客戶端不正常的請(qǐng)求行為。這有助于避免某些形式的拒絕服務(wù)攻擊。默認(rèn)值為“8190”。
解決
在Apache的httpd.conf配置文件中新增下面2行代碼
LimitRequestLine 40940
LimitRequestFieldSize 40940