web服務器的概念與基本原理 web服務器是什么

1.1. Web服務器概念與基本原理1.1.1. Web服務器的歷史1989年,互聯網之父Berners-Lee向其雇主CERN提出了一個新項目,目的是通過使用超文本系統來緩解科學家之間的信息交流 。該項目導致Berners-Lee在1990年編寫了兩個方案:

  • 一個名為WorldWideWeb的瀏覽器 。
  • 世界上第一個網絡服務器,后來被稱為CERN httpd,它運行在NeXTSTEP上
    在1991年至1994年期間,用于通過萬維網沖浪和交換數據的早期技術的簡單性和有效性有助于將其移植到許多不同的操作系統,并將其用于科學組織和大學,然后傳播到行業 。
1994年,Berners-Lee決定組建萬維網聯盟(W3C),通過標準化過程來管理涉及的許多技術(HTTP,HTML等)的進一步發展 。
Web服務器的主要功能是存儲,處理和傳遞網頁給客戶 。客戶端和服務器之間的通信使用超文本傳輸協議(HTTP)進行 。交付的頁面最常見的是HTML文檔,除了文本內容之外,還可能包含圖像,樣式表和腳本 。
一個用戶代理,通常是web瀏覽器或web爬蟲,通過發起一個HTTP請求以獲取服務器資源,服務器根據請求返回該資源或由于某種原因響應錯誤消息 。該資源通常是服務器輔助存儲上的真實文件,但這不一定是這種情況,取決于Web服務器的實現方式 。
雖然主要功能是提供內容,但HTTP的完整實現還包括從客戶端接收內容的方式 。此功能用于提交Web表單,包括上傳文件 。許多通用Web服務器還支持使用Active Server Pages(ASP),PHP或其他腳本語言的服務器端腳本 。這意味著Web服務器的行為可以在單獨的文件中腳本化,而實際的服務器軟件保持不變 。通常,此函數用于動態生成HTML文檔(“即時”),而不是返回靜態文檔 。前者主要用于從數據庫檢索或修改信息 。后者通??斓枚啵⑶腋菀妆痪彺?,但不能提供動態內容 。
Web服務器不僅用于為萬維網服務 。它們也可以被嵌入到諸如打印機,路由器,網絡攝像機等設備中,并且僅服務于本地網絡 。然后,web服務器可以用作用于監視或管理所討論的設備的系統的一部分 。這通常意味著客戶端計算機上不需要安裝其他軟件,因為只需要一個網絡瀏覽器(現在大多數操作系統都包含在內) 。
1.1.2. Web服務器工作原理HTTP協議基于TCP協議上,是一個應用層協議,用于用戶代理和Web服務器進行通信 。Web服務器通常采用一問一答的方式進行工作:
  1. 在用戶代理上用戶發起資源請求,請求內容包括但不限于:指定資源的唯一標識URI,指明動作類型(GET/POST/DELETE/PUT…)
  2. 用戶代理解析用戶輸入URI并從中獲取目標域名,交由DNS服務器解析 。如果URI中指定某IP地址,這無需這步 。
  3. 如果與服務器的會話還沒建立,此時先建立TCP連接,并完成HTTP協商(確定雙方均可接受的處理方式,包括協議版本,是否加密,內容格式等等) 。
  4. 用戶代理把請求內容封裝成HTTP數據包向服務器發送 。
  5. 服務器接收到資源請求并以之前協商好的方式解包并處理 。
  6. 服務器請求的資源封裝成HTTP數據包并返回給用戶代理 。
接下來重點說說服務器端的工作原理
更多linux內核視頻教程文本資料免費獲取后臺私信【內核】
web服務器的概念與基本原理 web服務器是什么

文章插圖