一次完整的http請求處理過程

來源:互聯網
上載者:User
Web服務要求處理步驟

一次完整的http請求處理過程

1、建立串連:接收或拒絕串連請求2、接收請求:接收用戶端請求報文中對某資源的一次請求的過程3、處理請求:伺服器對請求報文進行解析,並擷取請求的資源及要求方法等相關資訊,根據方法,資源,首部和可選的主體部分對請求進行處理    中繼資料:請求報文首部    <method> <URL> <VERSION>    HEADERS格式name:value    <request body>    樣本:    Host: www.chuyuni.cn   請求的主機名稱    Server: Apache/2.4.7HTTP常用請求方式,MethodGET、POST、HEAD、PUT、DELETE、TRACE、OPTIONS4、訪問資源:伺服器擷取請求報文中請求的資源web伺服器,即存放了web資源的伺服器,負責向要求者提供對方請求的靜態資源,或動態運行後產生的資源        資源放置於本地檔案系統特定的路徑:DocRoot        DocRoot → /var/www/html        /var/www/html/images/logo.jpg        http://www.magedu.com/images/logo.jpg    web伺服器資源路徑映射方式:    (a) docroot        (b) alias    (c) 虛擬機器主機docroot(d) 使用者家目錄docroot5、構建響應報文:一旦Web伺服器識別除了資源,就執行要求方法中描述的動作,並返迴響應報文。響應報文中包含有響應狀態代碼、響應首部,如果產生了響應主體的話,還包括響應主體    1)響應實體:如果交易處理產生了響應主體,就將內容放在響應報文中回送過去。響應報文中通常包括:描述了響應主體MIME類型的Content-Type首部描述了響應主體長度的Content-Length實際報文的主體內容    2)URL重新導向:web服務構建的響應並非用戶端請求的資源,而是資源另外一個訪問路徑    永久重新導向:http://www.360buy.com    臨時重新導向:http://www.taobao.com    3)MIME類型:Web伺服器要負責確定響應主體的MIME類型。多種設定管理員的方法可將MIME類型與資源管理起來魔法分類:Apache web伺服器可以掃描每個資源的內容,並將其與一個已知模式表(被稱為魔法檔案)進行匹配,以決定每個檔案的MIME類型。這樣做可能比較慢,但很方便,尤其是檔案沒有標準副檔名時顯式分類:可以對Web伺服器進行配置,使其不考慮檔案的副檔名或內容,強制特定檔案或目錄內容擁有某個MIME類型類型協商:有些Web伺服器經過配置,可以以多種文檔格式來儲存資源。在這種情況下,可以配置Web伺服器,使其可以通過與使用者的協商來決定使用哪種格式(及相關的MIME類型)"最好"6、發送響應報文:Web伺服器通過串連發送資料時也會面臨與接收資料一樣的問題。伺服器可能有很多條到各個用戶端的串連,有些是閒置,有些在向伺服器發送資料,還有一些在向用戶端回送響應資料。伺服器要記錄串連的狀態,還要特別注意對持久串連的處理。對非持久串連而言,伺服器應該在發送了整條報文之後,關閉自己這一端的串連。對持久串連來說,串連可能仍保持開啟狀態,在這種情況下,伺服器要正確地計算Content-Length首部,不然用戶端就無法知道響應什麼時候結束了7、記錄日誌:最後,當事務結束時,Web伺服器會在記錄檔中添加一個條目,來描述已執行的事務
Web訪問響應模型(Web I/O)

單進程I/O模型:啟動一個進程處理使用者請求,而且一次只處理一個,多個請求被串列響應 多進程I/O模型:並行啟動多個進程,每個進程響應一個串連請求 複用I/O結構:啟動一個進程,同時響應N個串連請求實現方法:多執行緒模式和事件驅動多執行緒模式:一個進程產生N個線程,每線程響應一個串連請求事件驅動:一個進程處理N個請求 複用的多進程I/O模型:啟動M個進程,每個進程響應N個串連請求,同時接收M*N個請求

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.