① Web前端開發者應該要懂的HTTP協議!
HTTP協議是構建在TCP/IP協議之上的,是TCP/IP協議的一個子集,所以要理解HTTP協議,要先了解下TCP/IP協議相關的知識。TCP/IP協議族是由一個四層協議組成的系統,這四層分別為:應用層、傳輸層、網路層和數據鏈路層。分層的好處是把各個相對獨立的功能解耦,層與層之間通過規定好的介面來通信。如果以後需要修改或者重寫某一個層的實現,只要介面保持不變也不會影響到其他層的功能。
如何理解HTTP與TCP/IP、DNS的關系呢?
當客戶端訪問Web站點時,首先會通過DNS服務查詢到域名的IP地址。然後瀏覽器生成HTTP請求,並通過TCP/IP協議發送給Web伺服器。Web伺服器接收到請求後會根據請求生成響應內容,並通過TCP/IP協議返回給客戶端。
相比於HTTP/1.1的不足,HTTP/2和HTTP/3各有哪些優勢呢?
HTTP/1.1有兩個主要的缺點:安全不足和性能不高。
HTTP/2完全兼容HTTP/1,是“更安全的HTTP、更快的HTTPS",頭部壓縮、多路復用等技術可以充分利用帶寬,降低延遲,從而大幅度提高上網體驗;
QUIC基於UDP實現,是HTTP/3中的底層支撐協議,該協議基於UDP,又取了TCP中的精華,實現了即快又可靠的協議。
以上就是環球青藤小編關於HTTP協議的相關內容分享,希望對大家有所幫助,想要了解更多相關內容,歡迎關注本平台!
② HTTP協議
HTTP 協議定義伺服器端和客戶端之間文件傳輸的溝通方式。目前HTTP協議的版本是Http1.1。RFC 2616描述了HTTP協議的具體信息。
這個協議已經成為瀏覽器和Web站點之間的標准。
當我上網的時候底層是如何進行交互的?
當訪問者點擊一個超鏈接的時候,將會給瀏覽器提交一個URL地址。通過這個URL地址,瀏覽器便知道去鏈接那個網站並去取得具體的頁面文件(也可能是一張圖片,一個pdf文件)。
HTTP工作的基礎就是,連接一個伺服器並開始傳輸文件到瀏覽器。
HTTP傳輸的基本過程
在http傳輸的過程中,被稱為客戶端的請求者向伺服器請求一個文件。
最基本的過程是:
1 客戶端連接一個主機;
2 伺服器接收連接,
3 客戶端請求一個文件,
4 伺服器發送一個應答.
實例
我們看幾個典型的過程
首先,我們想訪問本頁面。在瀏覽器上敲入「http://www.maketop.net/resource/rs_041112_02.php」.瀏覽器將連接www.maketop.net然後發送:
>> GET /resource/rs_041112_02.php Http1.1
>> Host: www.maketop.net
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
>> Accept-Language: en
>> Accept-Encoding: gzip, deflate
>> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10
>> Connection: Keep-Alive
>>
解釋:瀏覽器請求頁面「/resource/rs_041112_02.php」。並使用HTTP1.1協議。並告訴伺服器你的瀏覽器是Firefox0.10。操作系統是Windows XP。 瀏覽器希望保持與www.maketop.net之間的連接,並請求獲得多的文件,包括網頁中的圖片。翻譯成語言上面是:
>> 用HTTP1.1協議獲得 /resource/rs_041112_02.php
>> 訪問的主機是: www.maketop.net
>> 接收的文件包括了: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
>> 使用的語言是: en
>> 接收的編碼方式(瀏覽器能夠解釋的)是: gzip, deflate
>> 用戶的瀏覽器信息:Windows XP的操作系統 Firefox/0.10的瀏覽器
>> 保持連接: 還要去圖片
>>
www.maketop.net的伺服器發出響應:
<< HTTP/1.1 200 OK
<< Date: Mon, 12 Mar 2004 19:12:16 GMT
<< Server: Apache/1.3.31 (Unix) mod_throttle/3.1.2
<< Last-Modified: Fri, 22 Sep 2004 14:16:18
<< ETag: "dd7b6e-d29-39cb69b2"
<< Accept-Ranges: bytes
<< Content-Length: 3369
<< Connection: close
<< Content-Type: text/html
<<
<< File content goes here
瀏覽器並從伺服器的響應中獲得伺服器的信息:比如運行在Apache。
上面翻譯成翻譯成語言上面就是RFC 2616
(摘自:http://www.maketop.net/resource/rs_041112_02.php)
<< HTTP1.1協議方式有效
<< 當前時間是: Mon, 12 Mar 2004 19:12:16 GMT
<< 伺服器是: Apache/1.3.31 (Unix) mod_throttle/3.1.2
<< 最後一次修改: Fri, 22 Sep 2004 14:16:18
<< ETag: "dd7b6e-d29-39cb69b2"
<< Accept-Ranges: bytes
<< Content-Length: 3369
<< Connection: close
<< Content-Type: text/html
<<
<< File content goes here
上面例子就是最簡單的交互過程描述,需要對HTTP協議中具體的命令了解,就需要閱讀
- 作者: trueman 2005年09月4日, 星期日 20:31 回復(0) | 引用(0) 加入博採
HTTP――網海之舟 HTTP(超文本傳輸協議,Hyper-Text Transport Protocol )是用於在互聯
網上傳輸超文本文件的協議。它對一個HTTP客戶程序和一個HTTP服務程序進行端
對端的連接。HTTP是在WWW (WWW )上所應用的最重要的協議。
它是Web 自己的協議,用來從一個HTTP伺服器上檢索信息。這可以是用HTML
寫的文本文件,靜態圖象,聲音文件,動畫視頻或僅是簡單的文本文件:HTTP服
務器知道怎樣識別文件類型,並通過線路在傳輸之前告訴你的瀏覽器將要傳來什
么樣的文件,以便瀏覽器知道如何對待。
HTTP是Web 技術中的一個最基本的協議,它是一個應用層協議,直接用TCP
層傳遞。整個協議的通信過程十分簡單。
為了要講清HTTP傳送一個文件的通信過程,首先有必要來重申一下URL 的概
念。URL (Uniform Resource Locator)的中文意思為統一資源定位器,它是用
來確定在IP網上Web 系統信息資源的位置的,URL 從結構上講很有點像計算機中
的文件名,例如下面就是一個URL.
http://info.cern/hypertext/Geo.html
這個URL 實際上要找的是Geo.html文件,前面都是路徑名。在Web 系統中,
就是用URL 來尋找相應文件的。當然實際上URL 還可以有復雜的形式並可帶各種
相關參數。在基本了解了URL 後,就可以來看HTTP是怎樣工作的了。當客戶機向
伺服器請求一個文件時,首先要建立一條TCP 連接,在TCP 連接好後,客戶機就
向伺服器發送URL ,讓伺服器根據URL 去尋找相應的文件,找到文件後就從已建
立好的TCP 通道上發給客戶機,文件發送完畢即拆除TCP 連接。當要尋找另一個
文件時,需要重復上述過程。
從上述過程可以看出,HTTP協議十分簡單。使用HTTP後,伺服器需要做的事
只是接受一個請求(URL ),根據用戶的請求發送相應文件,伺服器不要做任何
檢索軌跡的記錄,從而使一個伺服器支持的用戶數大為增加。但HTTP也有不少缺
點,因為其簡單,每傳一個文件就要建一次TCP 連接、拆除一次TCP 連接,當要
傳送的文件很小時就非常不合算了。另外由於伺服器不能保留檢索軌跡,因而為
口令記憶等帶來了很大的麻煩,導致系統效率下降。
③ 在TCP/IP協議中,Web瀏覽器使用的HTTP協議屬於什麼層協議
屬於應用層通信協議。
HTTP是客戶端瀏覽器或其他程序與Web伺服器之間的應用層通信協議。在Internet上的Web伺服器上存放的都是超文本信息,客戶機需要通過HTTP協議傳輸所要訪問的超文本信息。
HTTP包含命令和傳輸信息,不僅可用於Web訪問,也可以用於其他網際網路/內聯網應用系統之間的通信,從而實現各類應用資源超媒體訪問的集成。
(3)客戶機訪問web站點的協議擴展閱讀:
TCP/IP協議的分層
1、網路訪問層(Network Access Layer)在TCP/IP參考模型中並沒有詳細描述,只是指出主機必須使用某種協議與網路相連。
2、互聯網層(Internet Layer)是整個體系結構的關鍵部分,其功能是使主機可以把分組發往任何網路,並使分組獨立地傳向目標。這些分組可能經由不同的網路,到達的順序和發送的順序也可能不同。如互聯網層使用網際網路協議(IP,Internet Protocol)實現主機和網路的鏈接。
3、傳輸層(Transport Layer)使源端和目的端機器上的對等實體可以進行會話。在這一層定義了兩個端到端的協議:傳輸控制協議(TCP,Transmission Control Protocol)和用戶數據報協議(UDP,User Datagram Protocol),用於主機與輸入輸出終端設備進行數據交互。
4、應用層(Application Layer)包含所有的高層協議,包括:虛擬終端協議(TELNET,TELecommunications NETwork)、文件傳輸協議(FTP,File Transfer Protocol)、(HTTP,HyperText Transfer Protocol)等,這些協議是TCP/IP協議最高層也是最重要的協議。
④ 在pc0訪問web伺服器的過程中,從數據鏈路層到應用層,共涉及哪些網路協議
1.數據鏈路層 2.網路層 3.傳輸層 4.應用層 ,其中IP是在第二層網路層中,TCP是在第3層傳輸層中,Internet體系結構最重要的是TCP/IP協議,是實現互聯網路連接性和互操作性的關鍵,它把許多台的Internet上的各種網路連接起來。Internet的其他網路協議都要用到TCP/IP協議提供的功能,因而稱我們習慣稱整Internet協議族為TCP/IP協議族,簡稱TCP/IP協議也可稱為TCP/IP四層體系結構,
1.數據鏈路層:
數據鏈路層是物理傳輸通道,可使用多種傳輸介質傳輸,可建立在任何物理傳輸網上。比如光纖、雙絞線等
2.網路層:其主要功能是要完成網路中主機間「分組」(Packet)的傳輸。
含有4個協議:
(1)網際協議IP
負責分組數據的傳輸,各個IP數據之間是相互獨立的。
(2)互聯網控制報文協議ICMP
IP層內特殊的報文機制,起控製作用,能發送報告差錯或提供有關意外情況的信息。因為ICMP的數據報通過IP送出因此功能上屬於網路的第3層。
(3)地址轉換協議ARP
為了讓差錯或意外情況的信息能在物理網上傳送到目的地,必須知道彼此的物理地址,這樣就存在把互聯網地址(是32位的IP地址來標識,是一種邏輯地址)轉換為物理地址的要求,這就需要在網路層上有一組服務(協議)能將IP地址轉換為相應的網路地址,這組協議就是APP.(可以把互聯網地址看成是外識別地址和物理地址看成是內識別地址)
(4)反向地址轉換協議RARP
RARP用於特殊情況,當只有自己的物理地址沒有IP地址時,可通過RARP獲得IP地址,如果遇到斷電或重啟狀態下,開機後還必需再使用RARP重新獲取IP地址。廣泛用於獲取無盤工作站的IP地址。
⑤ 用戶主要使用什麼協議訪問互聯網中的WEB資源
超文本傳輸協議HTTP(HyperText Transfer Protocol)
⑥ 在游覽器與WEB伺服器之間信息交互的過程中使用的協議是什麼
在游覽器與WEB伺服器之間信息交互的過程中使用的協議是HTTP。
HTTP是一個客戶端和伺服器端請求和應答的標准(TCP)。客戶端是終端用戶,伺服器端是網站。通過使用Web瀏覽器、網路爬蟲或者其它的工具,客戶端發起一個到伺服器上指定埠(默認埠為80)的HTTP請求。(我們稱這個客戶端)叫用戶代理(user agent)。
應答的伺服器上存儲著(一些)資源,比如HTML文件和圖像。(我們稱)這個應答伺服器為源伺服器(origin server)。在用戶代理和源伺服器中間可能存在多個中間層,比如代理,網關,或者隧道(tunnels)。
盡管TCP/IP協議是互聯網上最流行的應用,HTTP協議並沒有規定必須使用它和(基於)它支持的層。 事實上,HTTP可以在任何其他互聯網協議上,或者在其他網路上實現。HTTP只假定(其下層協議提供)可靠的傳輸,任何能夠提供這種保證的協議都可以被其使用。
(6)客戶機訪問web站點的協議擴展閱讀:
協議功能
HTTP協議(HyperText Transfer Protocol,超文本傳輸協議)是用於從WWW伺服器傳輸超文本到本地瀏覽器的傳輸協議。它可以使瀏覽器更加高效,使網路傳輸減少。
它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。
HTTP包含命令和傳輸信息,不僅可用於Web訪問,也可以用於其他網際網路/內聯網應用系統之間的通信,從而實現各類應用資源超媒體訪問的集成。
⑦ http是什麼協議
HTTP 協議是在客戶端 - 伺服器計算模型中用作請求 - 響應協議。一個網頁瀏覽器,例如,可
能是客戶端,並在計算機上運行的應用程序託管一個網站可能是伺服器。客戶端向伺服器提交
HTTP請求消息。伺服器,該伺服器提供的資源,如HTML文件和其他內容,或代表客戶機的
執行其它功能,返回一個響應消息給客戶端。響應包含有關請求的完成狀態信息,還可能在其
消息正文中包含請求的內容。
Web瀏覽器是用戶代理(UA)的示例。其他類型的用戶代理包括搜索提供商,語音瀏覽器,
移動應用程序以及訪問,使用或顯示網路內容的其他軟體所使用的索引軟體。
HTTP旨在允許中間網路元素改進或啟用客戶端和伺服器之間的通信。高流量網站通常受益於
代表上游伺服器提供內容的Web緩存伺服器,以縮短響應時間。Web瀏覽器緩存先前訪問的
Web資源,並在可能的情況下重用它們以減少網路流量。通過使用外部伺服器中繼消息,專用
網路邊界處的HTTP代理伺服器可以在沒有全局可路由地址的情況下促進客戶端的通信。
HTTP是在Internet協議套件框架內設計的應用程序層協議。它的定義假定底層和可靠傳輸層協
議和傳輸控制協議(TCP)是常用的。但是,HTTP可以適用於使用不可靠的協議,例如用戶數
據報協議(UDP),例如在HTTPU和簡單服務發現協議(SSDP)中。
(7)客戶機訪問web站點的協議擴展閱讀:
與HTTP協議非常相似的一個協議HTTPS協議
安全超文本傳輸協議(HTTPS)是超文本傳輸協議(HTTP)的擴展。它用於通過計算機網路
進行安全通信,並在網際網路上廣泛使用。在HTTPS中,通信協議使用傳輸層安全性(TLS)或
以前的安全套接字層(SSL)進行加密。因此,該協議通常也稱為HTTP over TLS,或HTTP
over SSL。
HTTPS的主要動機是對所訪問網站的身份驗證以及在傳輸過程中保護所交換數據的隱私和完整
性。它可以防止中間人攻擊。客戶端和伺服器之間的通信的雙向加密防止了對通信的竊聽和篡
改。在實踐中,這提供了一個合理的保證,即一個人在不受攻擊者干擾的情況下進行通信,而
不是冒名頂替者。
⑧ http 底層協議是什麼
HTTP協議(HyperText Transfer Protocol,超文本傳輸協議)是用於從WWW伺服器傳輸超文本到本地瀏覽器的傳輸協議。它可以使瀏覽器更加高效,使網路傳輸減少。
它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。
HTTP是客戶端瀏覽器或其他程序與Web伺服器之間的應用層通信協議。在Internet上的Web伺服器上存放的都是超文本信息,客戶機需要通過HTTP協議傳輸所要訪問的超文本信息。
HTTP包含命令和傳輸信息,不僅可用於Web訪問,也可以用於其他網際網路/內聯網應用系統之間的通信,從而實現各類應用資源超媒體訪問的集成。
(8)客戶機訪問web站點的協議擴展閱讀:
通過HTTP或者HTTPS協議請求的資源由統一資源標示符(Uniform Resource Identifiers)(或者,更准確一些,URLs)來標識。
1、基於請求/響應模型的協議。請求和響應必須成對,先有請求後有響應
2、http協議默認埠:80
3、簡單快速:客戶向伺服器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。
每種方法規定了客戶與伺服器聯系的類型不同。由於HTTP協議簡單,使得HTTP伺服器的程序規模小,因而通信速度很快。
4、靈活:HTTP允許傳輸任意類型的數據對象。正在傳輸的類型由Content-Type加以標記。
5、無連接:無連接的含義是限制每次連接只處理一個請求。伺服器處理完客戶的請求,並收到客戶的應答後,即斷開連接。採用這種方式可以節省傳輸時間。
6、無狀態:HTTP協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。另一方面,在伺服器不需要先前信息時它的應答就較快。
⑨ 一台電腦通過瀏覽器訪問網頁時,需要用到那些協議
上網肯定離不開TCP/IP協議,訪問網頁應該是HTTP超文本傳輸協議。涉及到上傳下載還要用到FTP文件傳輸協議。
⑩ iis伺服器使用哪個協議為客戶提供web瀏覽服務
IIS伺服器為客戶提供Web瀏覽器服務所使用的協議是:HTTP:超文本傳輸協議(Hypertext Transfer Protocol)