標籤:amd eset next 執行 地址 請求重新導向 text 切換 顯示
HTTP 簡介
HTTP協議是Hyper Text Transfer Protocol(超文字傳輸通訊協定 (HTTP))的縮寫,是用於從全球資訊網(WWW:World Wide Web )伺服器傳輸超文本到本地瀏覽器的傳送協議。。
HTTP是一個基於TCP/IP通訊協定來傳遞資料(HTML 檔案, 圖片檔案, 查詢結果等)。
HTTP 工作原理
HTTP協議工作於用戶端-服務端架構為上。瀏覽器作為HTTP用戶端通過URL向HTTP服務端即WEB伺服器發送所有請求。
Web伺服器有:Apache伺服器,IIS伺服器(Internet Information Services)等。
Web伺服器根據接收到的請求後,向用戶端發送響應資訊。
HTTP預設連接埠號碼為80,但是你也可以改為8080或者其他連接埠。
HTTP三點注意事項:
- HTTP是無串連:不需連線的含義是限制每次串連只處理一個請求。伺服器處理完客戶的請求,並收到客戶的應答後,即中斷連線。採用這種方式可以節省傳輸時間。
- HTTP是媒體獨立的:這意味著,只要用戶端和伺服器知道如何處理的資料內容,任何類型的資料都可以通過HTTP發送。用戶端以及伺服器指定使用適合的MIME-type內容類型。
- HTTP是無狀態:HTTP協議是無狀態協議。無狀態是指協議對於交易處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的資訊,則它必須重傳,這樣可能導致每次串連傳送的資料量增大。另一方面,在伺服器不需要先前資訊時它的應答就較快。
以表展示了HTTP協議通訊流程:
HTTP狀態代碼
當瀏覽者訪問一個網頁時,瀏覽者的瀏覽器會向網頁所在伺服器發出請求。當瀏覽器接收並顯示網頁前,此網頁所在的伺服器會返回一個包含HTTP狀態代碼的資訊頭(server header)用以響應瀏覽器的請求。
HTTP狀態代碼的英文為HTTP Status Code。
下面是常見的HTTP狀態代碼:
- 200 - 請求成功
- 301 - 資源(網頁等)被永久轉移到其它URL
- 404 - 請求的資源(網頁等)不存在
- 500 - 內部伺服器錯誤
HTTP狀態代碼分類
HTTP狀態代碼由三個十進位數字組成,第一個十進位數字定義了狀態代碼的類型,後兩個數字沒有分類的作用。HTTP狀態代碼共分為5種類型:
HTTP狀態代碼分類
| 分類 |
分類描述 |
| 1** |
資訊,伺服器收到請求,需要要求者繼續執行操作 |
| 2** |
成功,操作被成功接收並處理 |
| 3** |
重新導向,需要進一步的操作以完成請求 |
| 4** |
用戶端錯誤,請求包含語法錯誤或無法完成請求 |
| 5** |
伺服器錯誤,伺服器在處理請求的過程中發生了錯誤 |
HTTP狀態代碼列表:
HTTP狀態代碼列表
| 狀態代碼 |
狀態代碼英文名稱 |
中文描述 |
| 100 |
Continue |
繼續。用戶端應繼續其請求 |
| 101 |
Switching Protocols |
切換協議。伺服器根據用戶端的請求切換協議。只能切換到更進階的協議,例如,切換到HTTP的新版本協議 |
| |
| 200 |
OK |
請求成功。一般用於GET與POST請求 |
| 201 |
Created |
已建立。成功請求並建立了新的資源 |
| 202 |
Accepted |
已接受。已經接受請求,但未處理完成 |
| 203 |
Non-Authoritative Information |
非授權資訊。請求成功。但返回的meta資訊不在原始的伺服器,而是一個副本 |
| 204 |
No Content |
無內容。伺服器成功處理,但未返回內容。在未更新網頁的情況下,可確保瀏覽器繼續顯示當前文檔 |
| 205 |
Reset Content |
重設內容。伺服器處理成功,使用者終端(例如:瀏覽器)應重設文檔視圖。可通過此返回碼清除瀏覽器的表單域 |
| 206 |
Partial Content |
部分內容。伺服器成功處理了部分GET請求 |
| |
| 300 |
Multiple Choices |
多種選擇。請求的資源可包括多個位置,相應可返回一個資源特徵與地址的列表用於使用者終端(例如:瀏覽器)選擇 |
| 301 |
Moved Permanently |
永久移動。請求的資源已被永久的移動到新URI,返回資訊會包括新的URI,瀏覽器會自動定向到新URI。今後任何新的請求都應使用新的URI代替 |
| 302 |
Found |
臨時移動。與301類似。但資源只是臨時被移動。用戶端應繼續使用原有URI |
| 303 |
See Other |
查看其它地址。與301類似。使用GET和POST請求查看 |
| 304 |
Not Modified |
未修改。所請求的資源未修改,伺服器返回此狀態代碼時,不會返回任何資源。用戶端通常會緩衝訪問過的資源,通過提供一個頭資訊指出用戶端希望只返回在指定日期之後修改的資源 |
| 305 |
Use Proxy |
使用代理。所請求的資源必須通過代理訪問 |
| 306 |
Unused |
已經被廢棄的HTTP狀態代碼 |
| 307 |
Temporary Redirect |
臨時重新導向。與302類似。使用GET請求重新導向 |
| |
| 400 |
Bad Request |
用戶端請求的語法錯誤,伺服器無法理解 |
| 401 |
Unauthorized www.jusho.cn |
請求要求使用者的身份認證 |
| 402 |
Payment Required |
保留,將來使用 |
| 403 |
Forbidden |
伺服器理解請求用戶端的請求,但是拒絕執行此請求 |
| 404 |
Not Found www.pipixiaa.com |
伺服器無法根據用戶端的請求找到資源(網頁)。通過此代碼,網站設計人員可設定"您所請求的資源無法找到"的個性頁面 |
| 405 |
Method Not Allowed |
用戶端請求中的方法被禁止 |
| 406 |
Not Acceptable |
伺服器無法根據用戶端請求的內容特性完成請求 |
| 407 |
Proxy Authentication Required |
請求要求代理的身份認證,與401類似,但要求者應當使用代理進行授權 |
| 408 |
Request Time-out |
伺服器等待用戶端發送的請求時間過長,逾時 |
| 409 |
Conflict |
伺服器完成用戶端的PUT請求是可能返回此代碼,伺服器處理請求時發生了衝突 |
| 410 |
Gone www.foodtvl.com |
用戶端請求的資源已經不存在。410不同於404,如果資源以前有現在被永久刪除了可使用410代碼,網站設計人員可通過301代碼指定資源的新位置 |
| 411 |
Length Required |
伺服器無法處理用戶端發送的不帶Content-Length的請求資訊 |
| 412 |
Precondition Failed |
用戶端請求資訊的先決條件錯誤 |
| 413 |
Request Entity Too Large |
由於請求的實體過大,伺服器無法處理,因此拒絕請求。為防止用戶端的連續請求,伺服器可能會關閉串連。如果只是伺服器暫時無法處理,則會包含一個Retry-After的響應資訊 |
| 414 |
Request-URI Too Large |
請求的URI過長(URI通常為網址),伺服器無法處理 |
| 415 |
Unsupported Media Type |
伺服器無法處理請求附帶的媒體格式 |
| 416 |
Requested range not satisfiable |
用戶端請求的範圍無效 |
| 417 |
Expectation Failed |
伺服器無法滿足Expect的要求標頭資訊 |
| |
| 500 |
Internal Server Error |
伺服器內部錯誤,無法完成請求 |
| 501 |
Not Implemented |
伺服器不支援要求的功能,無法完成請求 |
| 502 |
Bad Gateway |
充當網關或代理的伺服器,從遠端伺服器接收到了一個無效的請求 |
| 503 |
Service Unavailable |
由於超載或系統維護,伺服器暫時的無法處理用戶端的請求。延時的長度可包含在伺服器的Retry-After頭資訊中 |
| 504 |
Gateway Time-out |
充當網關或代理的伺服器,未及時從遠端伺服器擷取請求 |
| 505 |
HTTP Version not supported |
伺服器不支援要求的HTTP協議的版本,無法完成處理 |
HTTP 簡介 HTTP 工作原理 HTTP三點注意事項: