HTTP 401 錯誤 - 未授權: (Unauthorized)
介紹
您的Web伺服器認為,用戶端(例如您的瀏覽器或我們的 CheckUpDown 機器人)發送的 HTTP 資料流是正確的,但進入網址 (URL) 資源 , 需要使用者身分識別驗證 , 而相關資訊 1 )尚未被提供, 或 2 )已提供但沒有通過授權測試。這就是通常所知的“ HTTP 基本驗證 ”。 需用戶端提供的驗證請求在 HTTP 協議中被定義為 WWW – 驗證標題欄位 (WWW-Authenticate header field) 。
一般來說該錯誤訊息表明您首先需要登入(輸入有效使用者名稱和密碼)。 如果你剛剛輸入這些資訊,立刻就看到一個 401 錯誤,就意味著,無論出於何種原因您的使用者名稱和密碼其中之一或兩者都無效(輸入有誤,使用者名稱暫時停用,等) 。
HTTP 迴圈中的 401錯誤
任何用戶端 ( 例如您的瀏覽器或我們的 CheckUpDown 機器人 ) ,都需要通過以下迴圈: 從您網站的 IP 名稱 ( 即您網站的網址-URL, 不帶起始的 ‘http://') 獲得一個 IP 位址。這個對應關係 ( 即由 IP 名稱向 IP 位址轉換的對應關係 ) 由網域名稱伺服器 (DNSs) 提供。 開啟一個 IP 通訊端 (socket) 串連到該 IP 位址。 通過該通訊端寫 HTTP 資料流。 從您的Web伺服器接受響應的 HTTP 資料流。該資料流包括狀態編碼, 其值取決於 HTTP 協議 。 解析該資料流得到 狀態編碼和其他有用資訊。
該錯誤在以上所述的最後一步產生,即當用戶端收到 HTTP 狀態編碼並識別其為 ‘401‘ 時
解決 401 錯誤 – 一般方法
每個Web伺服器都有自己的方式系統管理使用者驗證。通常由該網站的網路安全員(例如,系統管理員)決定哪些使用者被允許訪問該網址。 該人員使用 Web 服務器軟體來建立這些使用者的使用者名稱及其密碼。 因此, 如果您需要訪問某個網址(或您忘記了自己的使用者名稱和密碼), 只有該網站的網路安全員可以協助您。任何安全問題需直接提交給他們。
如果你認為該網站上的網頁 * 應該 * 是對任何互連網使用者開放的, 那麼 401 資訊表明一個更深層問題。 首先,您可以通過一個瀏覽器檢查您的網址。 該瀏覽器應該運行在一台您以前從未使用過, 也不包含任何有關您的資訊的電腦上, 同時, 您還應避免使用您以前用過的身分識別驗證(密碼等)。 理想情況是, 這一切應該通過一個完全不同於任何您用過的互連網串連(例如由不同的互連網服務供應商- ISP 提供的撥號連線)。 簡而言之,您要摹擬一個完全陌生的人通過網上衝浪訪問您的網頁的情況。
如果這種通過瀏覽器的檢查表明沒有授權問題,則可能是您的 Web 服務器 ( 或周邊系統 ) 被設定為不允許某種 HTTP 傳輸模式。 換句話說就是, 來自一個知名瀏覽器的 HTTP 通訊是允許的, 但來自其他系統的自動通訊則被拒絕, 並產生 401 錯誤碼。這是一種異常情況, 但是也許表明您的 Web 服務器周圍 採取了非常具有防禦性的安全性原則。
解決 401 錯誤 – CheckUpDown
當您設定您的 CheckUpDown 帳戶時,您可以有選擇性地提供兩項資訊 2. 網站使用者名稱, 和 3. 網站密碼。 只有當您的網站使用 HTTP 基本驗證時您才應該提供這些資訊。如果您提供這些資訊, CheckUpDown 機器人則總是使用它們。 如果您的網站實際上並沒有使用基本驗證,則會導致 401 錯誤。相反,如果您不提供這些資訊,而您的網站卻使用此身分識別驗證,您也會得到 401 錯誤。
然而,如果您的網址是向所有訪問者開放的, 401 資訊則不應該出現。因為它表明一個基本的授權問題, 我們只能通過與負責您的網站及周邊系統安全的相關人員協商來解決該問題。 不幸的是, 這些討論可能需要一些時間, 但往往會友好地解決。 您可以通過向您的系統安全人員推薦我們的服務來協助解決問題。 如果您持續發現 401 錯誤, 就請與我們聯絡(最好通過電子郵件), 以便我們就解決這些問題的最佳途徑達成一致。
來自:http://blog.csdn.net/patronsaint/article/details/5639962