問題:
不同的HTTP響應代碼是什麼意思?
環境:運行任何AsyncOS版本的思科網路安全裝置(WSA)
HTTP總是有客戶端請求和伺服器響應。伺服器響應透過數字響應代碼進行分類。響應代碼指示成功和失敗的HTTP請求背後的原因。
有關HTTP響應代碼的完整詳細資訊,請參閱RFC 2616 (HTTP),第10部分。
下面是有關您可能會遇到的最常見響應代碼的詳細資訊:
1xx代碼:資訊
100繼續:通常在ICAP協定中顯示。此為資訊性響應,讓客戶端知道它可以繼續傳送資料。關於ICAP服務(例如病毒掃描),伺服器可能只希望看到前x個位元組數。當完成掃描第一組位元組並且未檢測到病毒時,它將傳送100 Continue以讓客戶端知道傳送對象的其餘部分。
2xx代碼:成功
200 OK:最常見的響應代碼。這表示要求成功而沒有任何問題。
3xx代碼:重定向
302 Found:這是臨時重定向。會指示使用者端對Location:標頭中指定的物件提出新要求。
304未修改:這是對GIMS的響應(GET If-modified-since)。從字面上講,這是包含報頭If-modified-since: <date>的標準HTTP GET。此標頭告訴伺服器使用者端在其本機快取中有要求的物件復本,並且包括擷取物件的日期。如果自該日期以來已修改物件,伺服器將以200「確定」和物件的新復本回應。如果物件自擷取日期後未變更,伺服器會傳回304 Not Modified回應。
307 Temporary Redirect:對於所有目的和用途,其含義均與302相同。如果發現更多詳細資訊,可以更新此文章。
4xx代碼:客戶端錯誤
400 Bad Request:這意味著HTTP請求中的某些內容語法不正確。可能的原因可能是同一行上有多個標頭、標頭中有空格、URI中沒有HTTP/1.1等等。應參考RFC 2616以獲得正確的語法。
401未授權:請求的對象需要身份驗證才能被訪問。401用於目標Web伺服器的身份驗證。在透明模式下使用思科網路安全裝置(WSA)時,在代理上啟用身份驗證時,會將401傳送回客戶端。這是因為裝置正在欺騙自己,就好像它是OCS(源內容伺服器)。
可用的身份驗證方法在www-authenticate: HTTP響應報頭中指定。這會告知使用者端此伺服器是否要求NTLM、基本或其他驗證方法。
403 Forbidden:客戶端被拒絕訪問請求的對象。 導致伺服器拒絕訪問對象的原因有很多。通常,伺服器會在HTTP資料(HTML響應)中包含某種原因說明。
404未找到:伺服器上不存在請求的對象。
需要407代理身份驗證:這與401相同,不同之處在於它專門用於代理而不是OCS的身份驗證。僅當請求明確傳送至代理時,才會傳送此請求。將WSA用作透明代理時,無法向客戶端傳送407,因為客戶端不知道該代理存在。如果是這種情況,則客戶端很可能對TCP套接字執行FIN或RST操作。
應使用proxy-authenticate:報頭,而不是使用www-authenticate:報頭指定可用的身份驗證方法。
5xx代碼:伺服器錯誤
500內部伺服器錯誤:一般伺服器失敗
502 Bad Gateway:當使用WSA作為代理時,通常會發生這種情況,此時網關的響應不正確。
503服務不可用:這通常在OCS過度佔用時傳送。稍後再次嘗試要求應該會成功。
504網關超時:如果WSA未從其網關收到響應,則會傳送504。