HTTP是什麼?

來源:互聯網
上載者:User

   一、HTTP協議是什麼

  我們在瀏覽器的地址欄裡輸入的網站地址叫做URL (Uniform Resource Locator,統一資源定位器)。就像每家每戶都有一個門牌地址一樣,每個網頁也都有一個Internet地址。當你在瀏覽器的地址框中輸入一個URL或是單擊一個超級連結時,URL就確定了要瀏覽的地址。瀏覽器通過超文字傳輸通訊協定 (HTTP)(HTTP),將Web伺服器上網站的網頁代碼提取出來,並翻譯成漂亮的網頁。因此,在我們認識HTTP之前,有必要先弄清楚URL的組成,例如:http://www.qi9.cn。它的含義如下:

  1. http://:代表超文字傳輸通訊協定 (HTTP),通知microsoft.com伺服器顯示Web頁,通常不用輸入;

  2. www:代表一個Web(全球資訊網)伺服器;

  3. bkill.com:這是裝有網頁的伺服器的網域名稱,或站台伺服器的名稱;

  4. China/:為該伺服器上的子目錄,就好像我們的檔案夾;

  5. Index.htm:index.htm是檔案夾中的一個HTML檔案(網頁)。

  我們知道,Internet的基本協議是TCP/IP協議,然而在TCP/IP模型最上層的是應用程式層(Application layer),它包含所有高層的協議。高層協議有:檔案傳輸通訊協定FTP、電子郵件傳輸協議SMTP、網域名稱系統服務DNS、網路新聞傳輸通訊協定NNTP和HTTP協議等。

  HTTP協議(Hypertext Transfer Protocol,超文字傳輸通訊協定 (HTTP))是用於從WWW伺服器傳輸超文本到本地瀏覽器的傳送協議。它可以使瀏覽器更加高效,使網路傳輸減少。它不僅保證電腦正確快速地傳輸超文字文件,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。這就是你為什麼在瀏覽器中看到的網頁地址都是以http://開頭的原因。

  自WWW誕生以來,一個多姿多彩的資訊和虛擬世界便出現在我們眼前,可是我們怎麼能夠更加容易地找到我們需要的資訊呢?當決定使用超文本作為WWW文檔的標準格式後,於是在1990年,科學家們立即制定了能夠快速尋找這些超文字文件的協議,即HTTP協議。經過幾年的使用與發展,得到不斷的完善和擴充,目前在WWW中使用的是HTTP/1.0的第六版。

  二、HTTP是怎樣工作的

  既然我們明白了URL的構成,那麼HTTP是怎麼工作呢?我們接下來就要討論這個問題。

  由於HTTP協議是基於請求/響應範式的(相當於客戶機/伺服器)。一個客戶機與伺服器建立串連後,發送一個請求給伺服器,請求方式的格式為:統一資源識別項(URL)、協議版本號碼,後邊是MIME資訊包括請求修飾符、客戶機資訊和可能的內容。伺服器接到請求後,給予相應的響應資訊,其格式為一個狀態行,包括資訊的協議版本號碼、一個成功或錯誤的代碼,後邊是MIME資訊包括伺服器資訊、實體資訊和可能的內容。

  許多HTTP通訊是由一個使用者代理程式初始化的並且包括一個申請在原始伺服器上資源的請求。最簡單的情況可能是在使用者代理程式和伺服器之間通過一個單獨的串連來完成。在Internet上,HTTP通訊通常發生在TCP/IP串連之上。預設連接埠是TCP 80,但其它的連接埠也是可用的。但這並不預示著HTTP協議在Internet或其它網路的其它協議之上才能完成。HTTP只預示著一個可靠的傳輸。

  這個過程就好像我們打電話訂貨一樣,我們可以打電話給商家,告訴他我們需要什麼規格的商品,然後商家再告訴我們什麼商品有貨,什麼商品缺貨。這些,我們是通過電話線用電話聯絡(HTTP是通過TCP/IP),當然我們也可以通過傳真,只要商家那邊也有傳真。

  HTTP協議的內部操作過程

  在WWW中,“客戶”與“伺服器”是一個相對的概念,只存在於一個特定的串連期間,即在某個串連中的客戶在另一個串連中可能作為伺服器。基於HTTP協議的客戶/伺服器模式的資訊交換過程,它分四個過程:建立串連、發送請求資訊、發送響應資訊、關閉串連。這就好像上面的例子,我們電話訂貨的全過程。

  其實簡單說就是任何伺服器除了包括HTML檔案以外,還有一個HTTP駐留程式,用於響應使用者請求。你的瀏覽器是HTTP客戶,向伺服器發送請求,當瀏覽器中輸入了一個開始檔案或點擊了一個超級連結時,瀏覽器就向伺服器發送了HTTP請求,此請求被送往由IP地址指定的URL。駐留程式接收到請求,在進行必要的操作後回送所要求的檔案。在這一過程中,在網路上發送和接收的資料已經被分成一個或多個資料包(packet),每個資料包包括:要傳送的資料;控制資訊,即告訴網路怎樣處理資料包。TCP/IP決定了每個資料包的格式。如果事先不告訴你,你可能不會知道資訊被分成用於傳輸和再重新組合起來的許多小塊。

  也就是說商家除了擁有商品之外,它也有一個職員在接聽你的電話,當你打電話的時候,你的聲音轉換成各種複雜的資料,通過電話線傳輸到對方的電話機,對方的電話機又把各種複雜的資料轉換成聲音,使得對方商家的職員能夠明白你的請求。這個過程你不需要明白聲音是怎麼轉換成複雜的資料的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.