中國科學(xué)技術(shù)大學(xué)90課件_第1頁
中國科學(xué)技術(shù)大學(xué)90課件_第2頁
中國科學(xué)技術(shù)大學(xué)90課件_第3頁
中國科學(xué)技術(shù)大學(xué)90課件_第4頁
中國科學(xué)技術(shù)大學(xué)90課件_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

TCP/IP基本原理

第十章Web服務(wù)本章學(xué)習(xí)要求:掌握:Web與HTTP的概念與關(guān)系掌握:HTTP的工作原理了解:Web服務(wù)器軟、硬件選擇要點(diǎn)了解:IIS服務(wù)器的基本概念了解:Apache服務(wù)器的配置 Web(或稱WorldWideWeb,簡稱WWW)服務(wù)是最常見的Internet服務(wù).而HTTP(HypertextTransferProtocol,超文本傳送協(xié)議)是web的基礎(chǔ)。Web服務(wù)是典型的客戶/服務(wù)器結(jié)構(gòu)的應(yīng)用。 Web的客戶(通常稱之為“瀏覽器”)與web服務(wù)器使用一個或多個TCP連接進(jìn)行通信。Web客戶端與服務(wù)器端通信時所采用的協(xié)議就是HTTP協(xié)議。Web服務(wù)器可以通過超文本鏈接指向另一個Web服務(wù)器,或者是其他類型的服務(wù)器(如FTP服務(wù)器、Telnet服務(wù)器等)。 在HTTP的協(xié)議中,描述了一種從Web服務(wù)器返回給客戶端的文檔,稱為HTML(超文本標(biāo)記語言)文檔。Web服務(wù)器還返回其他類型的文檔(圖像、無格式文本等)。與這些用HTML語言描述的文檔一起、構(gòu)成了豐富多彩的Web頁面。10.1.1HTTP的工作原理 由于HTTP協(xié)議基于請求/響應(yīng)范模式(相當(dāng)于客戶機(jī)/服務(wù)器),一個客戶機(jī)與服務(wù)器建立連接后,發(fā)送一個請求給服務(wù)器,請求格式為:統(tǒng)一資源標(biāo)識符(URL)、協(xié)議版本號,后邊是MIME信息包括請求修飾符、客戶機(jī)信息和可能的內(nèi)容。服務(wù)器接到請求后,給予相應(yīng)的響應(yīng)信息,其格式為一個狀態(tài)行,包括信息的協(xié)議版本號、一個成功或錯誤的代碼,后邊是MIME信息包括服務(wù)器信息、實(shí)體信息和可能的內(nèi)容。 許多HTTP通訊是由一個用戶代理初始化的并且包括一個申請?jiān)谠捶?wù)器上資源的請求。最簡單的情況可能是在用戶代理和源服務(wù)器(Originserver)之間通過一個單獨(dú)的連接來完成。如下圖示: 用戶代理UA源服務(wù)器(O)連接V請求鏈響應(yīng)鏈 當(dāng)一個或多個中介出現(xiàn)在請求/響應(yīng)鏈中時,情況就變得復(fù)雜一些。中介由三種:代理(Proxy)、網(wǎng)關(guān)(Gateway)和通道(Tunnel)。一個代理根據(jù)URI的絕對格式來接受請求,重寫全部或部分消息,通過URI的標(biāo)識把已格式化過的請求發(fā)送到服務(wù)器。網(wǎng)關(guān)是一個接收代理,作為一些其它服務(wù)器的上層,并且如果必須的話,可以把請求翻譯給下層的服務(wù)器協(xié)議。一個通道作為不改變消息的兩個連接之間的中繼點(diǎn)。當(dāng)通訊需要通過一個中介(例如:防火墻等)或者是中介不能識別消息的內(nèi)容時,通道經(jīng)常被使用。下面的圖表明了在用戶代理(UA)和源服務(wù)器(O)之間有三個中介(A,B和C)。一個通過整個鏈的請求或響應(yīng)消息必須經(jīng)過四個連接段。這個區(qū)別是重要的,因?yàn)橐恍〩TTP通訊選擇可能應(yīng)用于最近的連接、沒有通道的鄰居,應(yīng)用于鏈的終點(diǎn)或應(yīng)用于沿鏈的所有連接。盡管下圖是線性的,每個參與者都可能從事多重的、并發(fā)的通訊。例如,B可能從許多客戶機(jī)接收請求而不通過A,并且/或者不通過C把請求送到A,在同時它還可能處理A的請求。用戶代理UA連接V請求鏈響應(yīng)鏈連接V連接V連接V源服務(wù)器(O) 任何針對不作為通道的匯聚可能為處理請求啟用一個內(nèi)部緩存。緩存的效果是請求/響應(yīng)鏈被縮短,條件是沿鏈的參與者之一具有一個緩存的響應(yīng)作用于那個請求。下圖說明結(jié)果鏈,其條件是針對一個未被UA或A加緩存的請求,B有一個經(jīng)過C來自O(shè)的一個前期響應(yīng)的緩存拷貝。 在Internet上,HTTP通訊通常發(fā)生在TCP/IP連接之上。缺省端口是TCP80,但其它的端口也是可用的。但這并不預(yù)示著HTTP協(xié)議在Internet或其它網(wǎng)絡(luò)的其它協(xié)議之上才能完成。HTTP只預(yù)示著一個可靠的傳輸。用戶代理UA連接V請求鏈響應(yīng)鏈連接V源服務(wù)器(O) 下面討論HTTP協(xié)議下客戶/服務(wù)器模式中信息交換的實(shí)現(xiàn)。 1)建立連接:通過申請?zhí)捉幼?Socket)實(shí)現(xiàn)的??蛻舸蜷_一個套接字并把它約束在一個端口上,如果成功,就相當(dāng)于建立了一個虛擬文件。以后就可以在該虛擬文件上寫數(shù)據(jù)并通過網(wǎng)絡(luò)向外傳送。 2)發(fā)送請求:打開一個連接后,客戶機(jī)把請求消息送到服務(wù)器的停留端口上,完成提出請求動作。HTTP/1.0請求消息的格式為: 請求消息=請求行(通用信息|請求頭|實(shí)體頭)CRLF[實(shí)體內(nèi)容] 請求行=方法+請求URL+HTTP版本號+CRLF 方法=GET|HEAD|POST|擴(kuò)展方法 URL=協(xié)議名稱+宿主名+目錄與文件名 方法描述指定資源中應(yīng)該執(zhí)行的動作,常用的方法有GET、HEAD和POST。不同的請求對象對應(yīng)GET的結(jié)果是不同的,對應(yīng)關(guān)系如下: 對象GET的結(jié)果 文件文件的內(nèi)容 程序該程序的執(zhí)行結(jié)果 數(shù)據(jù)庫查詢查詢結(jié)果 HEAD:要求服務(wù)器查找某對象的元信息,而不是對象本身。 POST:從客戶機(jī)向服務(wù)器傳送數(shù)據(jù),在要求服務(wù)器和CGI做進(jìn)一步處理時會用到。用于發(fā)送HTML文本中FORM的內(nèi)容,讓CGI程序處理。 下面舉一個請求的例子: GETHTTP/1.0頭信息又稱為元信息,即信息的信息,利用元信息可以實(shí)現(xiàn)有條件的請求或應(yīng)答。請求頭——告訴服務(wù)器怎樣解釋本次請求,主要包括用戶可以接受的數(shù)據(jù)類型、壓縮方法和語言等。實(shí)體頭——實(shí)體信息類型、長度、壓縮方法、最后一次修改時間、數(shù)據(jù)有效期等。實(shí)體——請求或應(yīng)答對象本身。3)發(fā)送響應(yīng):服務(wù)器在處理完客戶的請求之后,要向客戶機(jī)發(fā)送響應(yīng)消息。HTTP/1.0的響應(yīng)消息格式如下: 響應(yīng)消息=狀態(tài)行(通用信息頭|響應(yīng)頭|實(shí)體頭)CRLF(實(shí)體內(nèi)容) 狀態(tài)行=HTTP版本號狀態(tài)碼原因敘述 狀態(tài)碼表示響應(yīng)類型 1××保留 2××表示請求成功地接收 3××為完成請求客戶需進(jìn)一步細(xì)化請求 4××客戶錯誤 5××服務(wù)器錯誤

響應(yīng)頭的信息包括:服務(wù)程序名,通知客戶請求的URL需要認(rèn)證,請求的資源何時能使用。4)關(guān)閉連接:客戶和服務(wù)器雙方都可以通過關(guān)閉套接字來結(jié)束TCP/IP對話。10.3Web服務(wù)器 在最簡單的情況下,Web服務(wù)器就是一臺計(jì)算機(jī),它使用Internet傳輸協(xié)議和一個快速的Internet連接,向客戶計(jì)算機(jī)發(fā)送其需要的HTML文件。然而,隨著Internet的發(fā)展,最新型的Web服務(wù)器的配置越來越像傳統(tǒng)的客戶/服務(wù)器和多媒體系統(tǒng)。今天的Web服務(wù)器在Internet(或Intranet)上提供音頻和視頻服務(wù),通信和協(xié)作服務(wù),在客戶輸入的基礎(chǔ)上動態(tài)地產(chǎn)生內(nèi)容,下載組件和軟件,影響和操作數(shù)據(jù)庫應(yīng)用程序及其他系統(tǒng),在Internet上處理商務(wù),并且提供大量的其他服務(wù)。Internet上的Web服務(wù)器 Internet上的計(jì)算機(jī)通過IP地址(如,1)來確認(rèn)。這些IP地址和每個機(jī)器相應(yīng)的域名由Internet上的DNS(域名服務(wù))服務(wù)器管理。這些服務(wù)器不斷地保持同步并更新它們的數(shù)據(jù)庫列表,這些數(shù)據(jù)庫列表包含了Internet上唯一的用數(shù)字表示的IP地址和域名。當(dāng)前,WorldWideWeb的通信量在Internet通信量中占了很大的部分。web服務(wù)器通過高速通信線路直接與Internet連接。這些服務(wù)器運(yùn)行Web服務(wù)器軟件,該軟件使用HTTP(超文本傳輸協(xié)議)越過TCP/IP接收和發(fā)送HTIP的頁請求,并把數(shù)據(jù)反饋給客戶瀏覽器。HTTP是通過Web傳送超文本文件(例如htm文件)的協(xié)議。 Internet使用HTTP協(xié)議在內(nèi)部網(wǎng)絡(luò)上傳送文件。公司在他們現(xiàn)有的基于TCP/IP的網(wǎng)絡(luò)上建立并配置Web服務(wù)器。Internet創(chuàng)作工具和組件技術(shù)使一些組織能夠開發(fā)出更便宜的Interanet的Web服務(wù)器是企業(yè)網(wǎng)絡(luò)的一部分。 當(dāng)使用WindowsNTServer和IIS建立企業(yè)內(nèi)部互連網(wǎng)時,Web服務(wù)器成為現(xiàn)有的安全的企業(yè)網(wǎng)絡(luò)的一部分,它允許用戶訪問HTML文件、Web應(yīng)用程序、共享文件和打印機(jī)以及通過WindowsNTServer網(wǎng)絡(luò)登錄在的有的Web服務(wù)器上共享系統(tǒng)信息。 還可以配置WindowsNTServer,針對不同的用戶對Web服務(wù)器上的文件確定不同的訪問級別。WindowsNT安全系統(tǒng)的適當(dāng)?shù)脑O(shè)置、安裝防火墻軟件和硬件來控制訪問,使你能夠?yàn)槠髽I(yè)內(nèi)部互連網(wǎng)以外的用戶開放部分的內(nèi)部網(wǎng)絡(luò)。在本章的“安全性”一節(jié)中介紹關(guān)于防火墻軟件的更多信息。Web服務(wù)器必須具備的條件 運(yùn)行Internet或Intranet應(yīng)用程序的服務(wù)器,是你的商業(yè)事務(wù)中非常重要的部分。它們必須安全、可靠地運(yùn)行,以確保對你的顧客不會產(chǎn)生任何影響。當(dāng)然,它們也必須具有一定的伸縮性,使你的業(yè)務(wù)以所需的速度發(fā)展。在以下的小節(jié)中總結(jié)了Web服務(wù)器需要的軟件和硬件。Web服務(wù)器硬件 運(yùn)行InternetInformationServer4.0和WindowsNTServer4.0Web服務(wù)器的推薦硬件如下表所示。(這些推薦硬件不是最低要求,而是Microsoft為運(yùn)行良好的系統(tǒng)推薦的。)RAM 如果建立的Web系統(tǒng)主要處理HTTP文件請求,那么當(dāng)通信量增加時,在使用器中的處理或RAM超過負(fù)荷之前,很有可能用完網(wǎng)絡(luò)的帶寬。然而,確保計(jì)算機(jī)中有足夠的RAM使系統(tǒng)能夠快速地對文件服務(wù),并且把許多用戶經(jīng)常訪問的文件保持在高速緩沖里。至少,確保購買的計(jì)算機(jī)在增加網(wǎng)絡(luò)帶寬時,有能力增加RAM的數(shù)量。Internet連接 Web服務(wù)器通過一條或多條高速通信線路直接與Internet連接。無論是要求銷售商來安裝通信線路,還是把服務(wù)器連接到Internet服務(wù)提供商(IPS)的現(xiàn)存線路上,都必須了解Internet連接速度(ICS)和相關(guān)的硬件的基礎(chǔ)知識。估計(jì)帶寬需求是一個復(fù)雜的過程,通常涉及以下因素:用戶要下載的文件的大?。↘B)和數(shù)量、在同一時刻你所期望的用戶數(shù)量。MaxRequestsPerChild30 使用子進(jìn)程的方式提供服務(wù)的Web服務(wù),常用的方式是一個子進(jìn)程為一次連接服務(wù),這樣造成的問題就是每次連接都需要生成、退出子進(jìn)程的系統(tǒng)操作,使得這些額外的處理過程占據(jù)了計(jì)算機(jī)的大量處理能力。因此最好的方式是一個子進(jìn)程可以為多次連接請求服務(wù),這樣就不需要這些生成、退出進(jìn)程的系統(tǒng)消耗,Apache就采用了這樣的方式,一次連接結(jié)束后,子進(jìn)程并不退出,而是停留在系統(tǒng)中等待下一次服務(wù)請求,這樣就極大的提高了性能。 但由于在處理過程中子進(jìn)程要不斷的申請和釋放內(nèi)存,次數(shù)多了就會造成一些內(nèi)存垃圾,就會影響系統(tǒng)的穩(wěn)定性,并且影響系統(tǒng)資源的有效利用。因此在一個副本處理過一定次數(shù)的請求之后,就可以讓這個子進(jìn)程副本退出,再從原始的httpd進(jìn)程中重新復(fù)制一個干凈的副本,這樣就能提高系統(tǒng)的穩(wěn)定性。這樣,每個子進(jìn)程處理服務(wù)請求次數(shù)由MaxRequestPerChild定義。缺省的設(shè)置值為30,這個值對于具備高穩(wěn)定性特點(diǎn)的Linux系統(tǒng)來講是過于保守的設(shè)置,可以設(shè)置為1000甚至更高,設(shè)置為0支持每個副本進(jìn)行無限次的服務(wù)處理。#Listen3000

#Listen8:80

#BindAddress* 10.3.1Microsoft的IIS服務(wù)器 IIS是一個Internet文件,IIS本身可以作為一個Web服務(wù)器,或者與相關(guān)的兼容技術(shù)一起建立Internet商務(wù),訪問并處理不同數(shù)據(jù)源中的數(shù)據(jù)以及建立利用服務(wù)器腳本和組件代碼傳送客戶/服務(wù)器功能的Web應(yīng)用程序。管理 IIS的InternetServiceManager使得管理者可以創(chuàng)建Web和FIP站點(diǎn)、改變站點(diǎn)的默認(rèn)設(shè)置、向服務(wù)器操作者分配任務(wù)、啟動和停止站點(diǎn)、管理事務(wù)、查看統(tǒng)計(jì)資料、本地或遠(yuǎn)程地管理任務(wù),并為Web服務(wù)器或其他的服務(wù)器執(zhí)行其他的管理任務(wù)。使用InternetServiceManager作為到MicrosoftManagementConsole(MMC)(WindowsNT的管理程序)的咬接。利用ManagementConsole,每個管理者都可以自定義網(wǎng)絡(luò)管理任務(wù)。安全性 如果Internet中需要安全事務(wù),IIS能提供SecureSocketsLayer(SSL)支持作為信息在客戶與服務(wù)器之間交換的一種方式。SSL服務(wù)器提供了數(shù)字鑒別以驗(yàn)證用戶合法性。 IIS支持基本的身份驗(yàn)證(未加密的用戶名和密碼的發(fā)出)、Callenge/Response(密碼的加密驗(yàn)證)以及服務(wù)器的登錄密碼(用于銀行和其他財務(wù)機(jī)關(guān)的128位數(shù)字證明密碼)。Microsoft通過MicrosoftProxyServer提供了防火墻安全、內(nèi)容緩沖以及管理軟件工具。代理服務(wù)器允許企業(yè)內(nèi)部互連網(wǎng)的開發(fā)者給公司提供Web訪問,并允許用戶安全地瀏覽內(nèi)部網(wǎng)絡(luò)的某些部分。10.3.2Apache的配置1.配置文件 Apache1.3.*是一個后臺運(yùn)行的程序,沒有界面。所有的配置,都包含在配置文件里。如果按上圖安裝,則主配置文件是: C:\Apache\conf\httpd.conf 如果要修改Apache的配置,可以用任何一個文本編輯工具(如記事本)編輯這個配置文件。在配置文件里,以“#”開頭的行是注釋行。2.配置選項(xiàng) 在配置文件里的主要選項(xiàng)如下: #Listen3000

#Listen8:80 Apache的IP地址和端口。一般來說不需要設(shè)置,Apache會綁定在本機(jī)所有IP地址的80端口上。 Port80 Apache的端口。默認(rèn)值是80。 ServerName 3.高級配置 1)設(shè)置虛擬目錄:在配置文件中找下面這行: <IfModulemod_alias.c> 在這行下面添加如下內(nèi)容: Alias/www1/"c:/123/" <Directory"c:/123/">

OptionsMul

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論