技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務(wù)器類 >

”Your browser sent a request that this server could not understand“什么意思

來源:技術(shù)員聯(lián)盟┆發(fā)布時間:2019-02-13 18:21┆點擊:

  錯誤的請求,您的瀏覽器發(fā)送一個請求,該服務(wù)器無法理解。

  一個請求頭域的大小超過服務(wù)器的限制.

  簡單來說,這是服務(wù)器內(nèi)部錯誤,你可以換個網(wǎng)站訪問

  這句話大概是說:你的瀏覽器向未知服務(wù)器發(fā)送了一個請求。

  這應(yīng)該不會是病毒,感覺更像某個瀏覽器的控件!

  錯誤的請求

  您的瀏覽器發(fā)送一個請求,這個服務(wù)器無法理解。

  一個請求頭字段的大小超過服務(wù)器的限制。

  另一個朋友的提示

  這段時間在把程序部署到apache2服務(wù)器,在調(diào)試程序的時候經(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的問題,查閱了P3P的文檔,沒有相關(guān)的條目。經(jīng)過不懈的搜索,終于發(fā)現(xiàn)原來是Apache中資源使用限制的設(shè)置問題。

  技術(shù)背景:

  Apache中“資源使用限制”就是要限制用戶對網(wǎng)站特定資源(如目錄、服務(wù)器硬件等)的訪問。相關(guān)指令包括:LimitRequestBody、LimitRequestFields、LimitRequestFieldSize、LimitRequestLine、RLimitCPU、RLimitMEM、RLimitNPROC和ThreadStackSize。LimitRequest*系列指令用來限制Apache在讀取客戶端請求的過程中使用的資源數(shù)量。通過限制這些值,可以減輕某些拒絕服務(wù)(DOS)攻擊;RLimit*系列指令限制被Apache子進程所派生的進程使用的資源數(shù)量,通常這些指令用來控制CGI腳本和SSI exec命令所使用的資源;ThreadStackSize指令在某些平臺上用來控制堆棧大小。

  LimitRequestLine

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

  LimitRequestFieldSize

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

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

  解決

  在Apache的httpd.conf配置文件中新增下面2行代碼

  LimitRequestLine 40940

  LimitRequestFieldSize 40940