Web服務器的體系結構

2021-01-27    分類: 網(wǎng)站建設

HTTP本身不能作為應用程序協(xié)議運行。它需要以硬件和軟件解決方案的形式提供基礎設施,這些解決方案提供不同的服務,并使通過萬維網(wǎng)的通信成為可能和有效的。

這是HTTP系列的第二部分。

在這里,您將了解更多信息:

  • Web服務器
  • 代理服務器
  • 高速緩存
  • 網(wǎng)關,隧道和中繼
  • 網(wǎng)絡爬蟲

這些是我們互聯(lián)網(wǎng)生活中不可或缺的一部分,您將準確了解每一項的目的是什么,以及它是如何運作的。這些知識將幫助您連接第一篇文章中的點,并更好地了解HTTP通信的流程。


Web服務器

正如第一篇文章所解釋的那樣,Web服務器的主要功能是存儲資源并在接收請求時為它們提供服務。您使用Web客戶端(也稱為Web瀏覽器)訪問Web服務器,然后獲取所請求的資源或更改現(xiàn)有資源的狀態(tài)。使用Web爬蟲也可以自動訪問Web服務器,我們將在本文后面討論。

一些最流行的Web服務器,你聽說過的可能是Apache HTTP Server,Nginx,IIS等。

Web服務器可以從簡單易用,到復雜和復雜的軟件?,F(xiàn)代Web服務器能夠執(zhí)行許多不同的任務。Web服務器應該能夠執(zhí)行的基本任務:

  • 設置連接 -?接受或關閉客戶端連接
  • 接收請求 -?讀取HTTP請求消息
  • 處理請求 -?解釋請求消息并采取措施
  • 訪問資源 -?訪問消息中指定的資源
  • 構造響應 -?創(chuàng)建HTTP響應消息
  • 發(fā)送響應 -將響應?發(fā)送回客戶端
  • 日志事務 -?在日志文件中寫入已完成的事務

我將在幾個不同的階段分解Web服務器的基本流程。這些階段代表了Web服務器流程的一個非常簡化的版本。

階段1:設置連接

當Web客戶端想要訪問Web服務器時,它必須嘗試打開新的TCP連接。另一方面,服務器嘗試提取客戶端的IP地址。之后,服務器決定打開或關閉與該客戶端的TCP連接。

如果服務器接受連接,它會將其添加到現(xiàn)有連接列表中并監(jiān)視該連接上的數(shù)據(jù)。

如果客戶端未經授權或列入黑名單(惡意),它也可以關閉連接。

服務器還可以嘗試使用“反向DNS”來識別客戶端的主機名。記錄消息時此信息可以提供幫助,但主機名查找可能需要一段時間,從而減慢了事務的速度。

階段2:接收/處理請求

解析傳入請求時,Web服務器會解析消息請求行,標題和正文(如果提供)中的信息。需要注意的一點是,連接可以隨時暫停,在這種情況下,服務器必須臨時存儲信息,直到它收到其余數(shù)據(jù)。

高端Web服務器應該能夠打開許多同時連接。這包括來自同一客戶端的多個同時連接。典型的網(wǎng)頁可以從服務器請求許多不同的資源。

階段3:訪問資源

由于Web服務器主要是資源提供者,因此他們有多種方式來映射和訪問資源。

最簡單的方法是映射資源是使用請求URI在Web服務器的文件系統(tǒng)中查找文件。通常,資源包含在服務器上的特殊文件夾中,名為docroot。例如,Windows服務器上的docroot可以位于F: WebResources 上。如果GET請求想要訪問/images/codemazeblog.txt上的文件,服務器會將其轉換為F: WebResources images codemazeblog.txt并在響應消息中返回該文件。當Web服務器上托管多個網(wǎng)站時,每個網(wǎng)站都可以擁有單獨的docroot。

如果Web服務器收到對目錄而不是文件的請求,它可以通過幾種方式解決它。它可以返回錯誤消息,返回默認索引文件而不是目錄,或掃描目錄并返回包含內容的HTML文件。

服務器還可以將請求URI映射到動態(tài)資源 - 生成某些結果的軟件應用程序。有一類稱為應用程序服務器的服務器,其目的是將Web服務器連接到復雜的軟件解決方案并提供動態(tài)內容。

階段3:生成并發(fā)送響應

一旦服務器識別出它需要服務的資源,它就形成響應消息。響應消息包含狀態(tài)代碼,響應標頭和響應正文(如果需要)。

如果正文存在于響應中,則消息通常包含描述正文大小的Content-Length標頭和描述返回資源的MIME類型的Content-Type標頭。

生成響應后,服務器會選擇發(fā)送響應所需的客戶端。對于非持久連接,服務器需要在發(fā)送整個響應消息時關閉連接。

階段4:記錄

事務完成后,服務器會將所有事務信息記錄在文件中。許多服務器提供日志記錄定制。

網(wǎng)頁題目:Web服務器的體系結構
網(wǎng)頁URL:http://www.muchs.cn/news20/97620.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、網(wǎng)站收錄電子商務、網(wǎng)站制作、域名注冊外貿建站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設