下代Windows Server 2008 IIS 7.0特性
IIS是Internet Information Server的縮寫(xiě),它是微軟公司主推的WEB服務(wù)器,現(xiàn)在用戶一般常用的版本是Windows 2003里面包含的IIS 6或者是更早的IIS 5,IIS與Window NT Server完全集成在一起,因而用戶能夠利用Windows NT Server和NTFS(NT File System,NT的文件系統(tǒng))內(nèi)置的安全特性,建立強(qiáng)大、靈活而安全的Internet和Intranet站點(diǎn)。IIS支持ISAPI,使用ISAPI可以擴(kuò)展服務(wù)器功能, IIS的設(shè)計(jì)目的是建立一套集成的服務(wù)器服務(wù),用以支持HTTP、FTP和SMTP,它能夠提供快速且集成了現(xiàn)有產(chǎn)品,同時(shí)可擴(kuò)展的Internet服務(wù)器。
新的IIS7在Windows Server2008中加入了更多的安全方面的設(shè)計(jì),用戶現(xiàn)在可以通過(guò)微軟的。Net語(yǔ)言來(lái)運(yùn)行服務(wù)器端的應(yīng)用程序。除此之外,通過(guò)IIS7新的特性來(lái)創(chuàng)建模塊將會(huì)減少代碼在系統(tǒng)中的運(yùn)行次數(shù),將遭受黑客腳本攻擊的可能性降至最低。從安全的觀點(diǎn)來(lái)考慮,這是IIS所涉及的一個(gè)新領(lǐng)域。 如此多的新特性,讓我們對(duì)Windows Server2008中的IIS7充滿了渴望,下面就讓我們一起看看IIS中五個(gè)最為核心的增強(qiáng)特性:
完全模塊化的IIS
如果你非常熟悉流行的Apache Web server軟件,那么你會(huì)知道它最大的優(yōu)勢(shì)就在于它的定制化,你可以把它配置為只能顯示靜態(tài)的HTML,也可以動(dòng)態(tài)的加載不同的模塊以允許不同類型的服務(wù)內(nèi)容。而現(xiàn)在使用的IIS卻無(wú)法很好的實(shí)現(xiàn)這一特性,這樣就造成了兩方面的問(wèn)題:其一,由于過(guò)多用戶并未使用的特性對(duì)于代碼的影響,性能方面有時(shí)不能讓用戶滿意;第二,由于默認(rèn)的接口過(guò)多所造成的安全隱患。
新的IIS7則完全解決了這個(gè)問(wèn)題,IIS7從核心層講被分割成了40多個(gè)不同功能的模塊。像驗(yàn)證、緩存、靜態(tài)頁(yè)面處理和目錄列表等功能全部被模塊化。這意味著你的Web服務(wù)器可以按照你的運(yùn)行需要來(lái)安裝相應(yīng)的功能模塊??赡艽嬖诎踩[患和不需要的模塊將不會(huì)再加載到內(nèi)存中去,程序的受攻擊面減小了,同時(shí)性能方面也得到了增強(qiáng)。
通過(guò)文本文件配置的IIS7 IIS7另一大特性就是管理工具使用了新的分布式web.config配置系統(tǒng)。IIS7不再擁有單一的metabase 配置儲(chǔ)存,而將使用和ASP.NET支持的同樣的web.config文件模型,這樣就允許用戶把配置和web應(yīng)用的內(nèi)容一起存儲(chǔ)和部署,無(wú)論有多少站點(diǎn),用戶都可以通過(guò)web.config文件直接配置,這樣當(dāng)公司需要掛接大量的網(wǎng)站時(shí),可能只需要很短的時(shí)間,因?yàn)楣芾韱T只需要拷貝之前做好的任意一個(gè)站點(diǎn)的web.config文件,然后把設(shè)置和web應(yīng)用一起傳送到遠(yuǎn)程服務(wù)器上就完成了,沒(méi)必要再寫(xiě)管理腳本來(lái)定制配置了。
同時(shí)管理工具支持“委派管理(delegated administration),用戶可以將一些可以確定的web.config文件通過(guò)委派的方式,委派給企業(yè)中其他的員工,當(dāng)然在這種情形下,管理工具里顯示的只是客戶自己網(wǎng)站的設(shè)置,而不是整個(gè)機(jī)器的設(shè)置,這樣IIS管理員就不用為站點(diǎn)的每一個(gè)微小變化而費(fèi)心,版本控制同樣簡(jiǎn)單,用戶只需要在組織中保留不同版本的文本文件,然后在必要的時(shí)候恢復(fù)它們就可以了。
微軟的產(chǎn)品向來(lái)以用戶界面友好引以為豪,然而作為為IT人士設(shè)計(jì)的IIS7服務(wù)器這一點(diǎn)卻好像并不明顯,回想從IIS 4 到IIS 6 ,提供給用戶的管理控制臺(tái)操作起來(lái)并不十分方便,而且由于技術(shù)等原因的限制,用戶很難通過(guò)一個(gè)統(tǒng)一的界面來(lái)實(shí)現(xiàn)全部的管理工作。
MMC 圖形模式管理工具
而在新的IIS 7中,這一問(wèn)題得到了明顯的改觀,用戶現(xiàn)在可以用管理工具在Windows客戶機(jī)器上創(chuàng)建和管理任意數(shù)目的網(wǎng)站。而不再局限于單個(gè)網(wǎng)站,同時(shí)相比IIS之前的版本,IIS7的管理界面也更加的友好和強(qiáng)大,此外IIS7的管理工具是用.NET和Windows Forms寫(xiě)成的,是可以被擴(kuò)展的。這意味著用戶可以添加自己的UI模塊到管理工具里,為自己的HTTP 運(yùn)行時(shí)模塊和配置設(shè)置提供管理支持。
IIS 7安全方面的增強(qiáng)
安全問(wèn)題永遠(yuǎn)是微軟被攻擊的重中之重,其實(shí)并非微軟對(duì)安全漠不關(guān)心,實(shí)在是因?yàn)槲④涍@艘巨型戰(zhàn)艦過(guò)于龐大,難免百密一失,好在微軟積極的響應(yīng)著每一個(gè)安全方面的意見(jiàn)與建議。IIS的安全問(wèn)題則主要集中在有關(guān).NET程序的有效管理以及權(quán)限管理方面的問(wèn)題。而IIS 7正是針對(duì)IIS 服務(wù)器遇到了安全問(wèn)題做了相應(yīng)的增強(qiáng)。
在新版本中IIS 和ASP.NET 管理設(shè)置集成到了單個(gè)管理工具里。這樣,用戶就可以在一個(gè)地方查看和設(shè)置認(rèn)證和授權(quán)規(guī)則,而不是像以前那樣要通過(guò)多個(gè)不同的對(duì)話框來(lái)做。這給管理人員提供了一個(gè)更加一致和清晰的用戶界面,以及web平臺(tái)上統(tǒng)一的管理體驗(yàn)。
在IIS7中,.NET應(yīng)用程序直接通過(guò)IIS代碼運(yùn)行而不再發(fā)送到Internet Server API擴(kuò)展上,這樣就減少了可能存在的風(fēng)險(xiǎn),并且提升了性能,同時(shí)管理工具內(nèi)置對(duì)ASP.NET 3.0的成員和角色管理系統(tǒng)提供管理界面的支持。這意味著用戶可以在管理工具里,創(chuàng)建和管理角色和用戶,以及給用戶指定角色,下面是IIS 7 完整的組件分報(bào)圖。
IIS 7 完整的組件分報(bào)圖
IIS 7的Windows PowerShell 管理環(huán)境 相信關(guān)注腳本編程或者是Exchange Server 2007的朋友都不會(huì)對(duì)Windows PowerShell感到陌生, Windows PowerShell是一個(gè)特為系統(tǒng)管理員設(shè)計(jì)的Windows 命令行shell 。在這個(gè) shell 中包括一個(gè)交互提示和一個(gè)可以獨(dú)立,或者聯(lián)合使用的腳本環(huán)境。對(duì)于熱愛(ài)腳本管理的IT pro們Windows PowerShell必將讓他們愛(ài)不釋手。而對(duì)于IIS服務(wù)器,Windows PowerShell同樣可以提供全面的管理功能。
不過(guò)雖然PowerShell也可以管理運(yùn)行在Windows Server 2003上的IIS6,但是IIS7才是特為通過(guò)PowerShell的命令行來(lái)進(jìn)行管理的。它包括了新的APPCMD功能,APPCMD通過(guò)標(biāo)準(zhǔn)的命令行界面來(lái)創(chuàng)建和配置站點(diǎn),這樣的命令行工具的應(yīng)用場(chǎng)景也非常常見(jiàn),當(dāng)用戶的環(huán)境中用到例如腳本管理的時(shí)候,APPCMD就將發(fā)揮非常其極大的優(yōu)勢(shì)。
IS 7.0是包括在Windows Vista客戶機(jī)上的,該操作系統(tǒng)的家庭版本也帶有IIS 7.0(而不象IIS 5.1,只有在XP Professional上才有)。服務(wù)器的IIS 7.0版本將在今年稍后隨Windows Server2008服務(wù)器發(fā)布,將添加一堆額外的部署特性,包括更加豐富的主機(jī)支持,安全的FTP支持,以及內(nèi)置的web farm部署支持等。
Web farm支持將是特別地酷,它將允許你在一個(gè)包含了運(yùn)行一個(gè)服務(wù)器所需的所有編碼,配置,內(nèi)容和密鑰的文件共享上部署你的web應(yīng)用。然后你可以添加任意數(shù)目的無(wú)狀態(tài),無(wú)配置的web服務(wù)器到一個(gè)web farm上,只需將它們指向那個(gè)文件共享,來(lái)動(dòng)態(tài)裝載它們的配置設(shè)置(包括綁定,虛擬目錄,應(yīng)用池設(shè)置等等)和應(yīng)用內(nèi)容即可。這使得在多個(gè)機(jī)器上擴(kuò)縮一個(gè)應(yīng)用簡(jiǎn)直是小菜一碟,可避免使用復(fù)制方法來(lái)做配置和應(yīng)用部署(只要把文件拷貝到文件共享上,web farm里的所有機(jī)器就會(huì)馬上裝載變動(dòng)過(guò)的文件)。
推出Windows Server2008服務(wù)器的Beta3版本支持go-live許可,所以你不久就能利用這個(gè)功能。我們已經(jīng)在用IIS 7.0集群運(yùn)行 Windows Server2008 了,所以你不會(huì)寂寞的!
Windows PowerShell 管理圖
IIS7.0 遷移
IIS7.0 遷移網(wǎng)站比IIS6.0更方便,因?yàn)锳pache Web server它最大的優(yōu)勢(shì)就在于它的定制化管理,IIS7.0現(xiàn)在使用Apache概念,所以把站點(diǎn)的配置文件拷貝到另一臺(tái)IIS7.0主機(jī)上即可以,詳情請(qǐng)了解上面《通過(guò)文本文件配置的IIS7》,《IIS 7的Windows PowerShell 管理環(huán)境》。
ASP.NET和IIS 7.0之集成 在早期的IIS版本中,開(kāi)發(fā)人員需要編寫(xiě)ISAPI擴(kuò)展/過(guò)濾器來(lái)擴(kuò)展服務(wù)器的功能。除了寫(xiě)起來(lái)非常痛苦外,ISAPI在如何接入服務(wù)器以及允許開(kāi)發(fā)人員定制方面也是非常有限。例如,你無(wú)法在ISAPI擴(kuò)展中實(shí)現(xiàn)URL重寫(xiě)代碼(注:ASP.NET是以ISAPI擴(kuò)展的方式實(shí)現(xiàn)的)。假如你把運(yùn)行時(shí)間長(zhǎng)的代碼編寫(xiě)成ISAPI過(guò)濾器的話,結(jié)果是你將占用web服務(wù)器的I/O線程(這就是我們不讓托管代碼在請(qǐng)求的過(guò)濾器執(zhí)行階段運(yùn)行的原因)。
我們?cè)贗IS7中對(duì)核心IIS處理引擎做的一個(gè)重大的架構(gòu)級(jí)變動(dòng)是通過(guò)一個(gè)新的模塊化的請(qǐng)求管道架構(gòu)來(lái)促成極其豐富的擴(kuò)展性。你現(xiàn)在可以通過(guò)與web服務(wù)器注冊(cè)一個(gè)HTTP擴(kuò)展性模塊(HTTP Extensibility Module),在任意一個(gè)HTTP請(qǐng)求的生命周期的任何地方編寫(xiě)代碼。這些擴(kuò)展性模塊可以使用native的C++代碼或.NET托管代碼來(lái)編寫(xiě)(你可以使用現(xiàn)有的ASP.NET System.Web.IHttpModule接口來(lái)實(shí)現(xiàn))。
所有“內(nèi)置的IIS7功能(認(rèn)證,授權(quán),靜態(tài)文件供應(yīng),目錄清單支持,經(jīng)典的ASP,記錄日志等),現(xiàn)在都是使用這個(gè)公開(kāi)的模塊化的管道API來(lái)實(shí)現(xiàn)的。這意味著你可以除去這些IIS7“內(nèi)置功能的任意一個(gè),而以你自己的實(shí)現(xiàn)來(lái)替換/擴(kuò)展這些功能。
IIS 7.0上的ASP.NET本身也從以ISAPI的實(shí)現(xiàn)形式變成直接接入IIS7管道的模塊:
IIS6.0 和IIS7.0 比較圖
這帶來(lái)諸多好處:
1) 你現(xiàn)在可以對(duì)服務(wù)器的所有請(qǐng)求(例如, .htm,.php,.jsp文件)使用ASP.NET表單認(rèn)證,成員/角色,以及任何其他特性。
2) 你現(xiàn)在可以輕松地重寫(xiě)任何web請(qǐng)求的URL或者以種種有趣的方式對(duì)請(qǐng)求做改動(dòng)。
3) 你可以使用VB或C#替換或擴(kuò)展任何現(xiàn)有的IIS特性(例如,你可以除去內(nèi)置的目錄清單模塊,接入你自己的模塊)。
這確實(shí)給.NET開(kāi)發(fā)人員帶來(lái)了無(wú)窮多的擴(kuò)展性機(jī)會(huì)。
IIS 7.0 六大新特性:
1)模塊化的網(wǎng)絡(luò)核心允許用戶增加和刪除特定的功能。如果要使用服務(wù)統(tǒng)計(jì)構(gòu)件,僅需幾個(gè)模塊(不包括ISAPI)。
2)一個(gè)統(tǒng)一標(biāo)準(zhǔn)的HTTP管道,它對(duì)應(yīng)于本地管理方面的應(yīng)用程序。用戶可以對(duì)經(jīng)典的ASP網(wǎng)頁(yè)使用基于窗體的認(rèn)證系統(tǒng)。
3)用戶可以建立自己的IHttpModule以及IHttpHandlers,并且把它們插入到統(tǒng)一的管道。
4)新款分布式的XML設(shè)置系統(tǒng),它利用了ASP.NET的設(shè)置系統(tǒng)的優(yōu)點(diǎn)。
5)改善的診斷和問(wèn)題解答機(jī)制,包括了新Runtime狀態(tài)以及跟蹤功能。
6)新型可擴(kuò)展,面向任務(wù)的管理員用戶界面。
總而言之,IIS 7將為Web管理員以及Web愛(ài)好者提供更加豐富,更加易用的管理工具。在新的IIS7中,無(wú)論是管理方面還是安全方面都得到了全新的設(shè)計(jì),而從用戶群的角度上講,利用IIS7, 個(gè)人用戶可以更快,更簡(jiǎn)便的建立自己的站點(diǎn),而企業(yè)用戶則可以更加全面,更加安全的維護(hù)和管理自己的WEB環(huán)境。隨著Windows Server2008的日益臨近,相信有關(guān)IIS7管理的相關(guān)介紹也會(huì)越來(lái)越多,究竟新版本有沒(méi)有帶給我們實(shí)質(zhì)的變革,還是只是一個(gè)IIS服務(wù)器功能的增強(qiáng),讓我們拭目以待吧。
相關(guān)文章:
1. Wise PC 1stAid一鍵解決Windows更新失敗的方法2. 怎么刻錄系統(tǒng)光盤(pán)?小編手把手教你電腦Windows刻錄系統(tǒng)光盤(pán)的方法3. Windows 8 Acer Recovery Management備份系統(tǒng)的方法4. Windows11暫停系統(tǒng)更新方法介紹5. Windows 10 Manager掃描系統(tǒng)重復(fù)文件的方法6. 小技巧:如何狙擊瘋狂的Windows信使廣告7. 使用Windows 10 Manager備份注冊(cè)表編輯器的方法8. Windows10如何使用PowerShell查看升級(jí)歷史記錄?9. Windows系列啟動(dòng)速度差異的奧秘10. Windows 7技巧:加快系統(tǒng)開(kāi)機(jī)和關(guān)機(jī)速度
