部署ASP.NET的3大技術(shù)(6)
發(fā)表時間:2024-02-09 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]除了“啟動畫面”對話框之外,用戶界面編輯器還提供了許多其他預(yù)定義的對話框,例如“許可協(xié)議”、“自述文件”、“注冊用戶”、“客戶信息”等,這些對話框都可以利用圖五的“添加對話框”窗口直接加入。 八、部署IIS配置信息 在準(zhǔn)備部署ASP.NET應(yīng)用程序的時候,一個必須考慮的重要問題是如何在部署應(yīng)用的同...
除了“啟動畫面”對話框之外,用戶界面編輯器還提供了許多其他預(yù)定義的對話框,例如“許可協(xié)議”、“自述文件”、“注冊用戶”、“客戶信息”等,這些對話框都可以利用圖五的“添加對話框”窗口直接加入。
八、部署IIS配置信息
在準(zhǔn)備部署ASP.NET應(yīng)用程序的時候,一個必須考慮的重要問題是如何在部署應(yīng)用的同時部署IIS的配置信息。如果用直接復(fù)制的方法部署Web應(yīng)用,例如用XCOPY命令、Windows資源管理器的復(fù)制功能、FTP操作等,部署操作顯然不涉及IIS的配置信息,IIS的配置必須單獨設(shè)置,或者在目標(biāo)機器上手工設(shè)置,或者編寫腳本程序自動設(shè)置。
如果用VS.NET的“復(fù)制項目”功能部署應(yīng)用,目標(biāo)服務(wù)器上會自動創(chuàng)建虛擬目錄,但I(xiàn)IS的配置信息仍舊不會復(fù)制到目標(biāo)服務(wù)器上新建的虛擬目錄,新建的虛擬目錄只是從Web網(wǎng)站繼承默認(rèn)的設(shè)置,也就是說,我們?nèi)耘f要單獨設(shè)置IIS的配置信息。只有用Web安裝項目來部署ASP.NET應(yīng)用程序,我們才可以讓安裝程序自動在目標(biāo)機器上設(shè)置IIS的配置信息。
要配置虛擬目錄的設(shè)置信息,首先打開文件系統(tǒng)編輯器,右擊“Web應(yīng)用程序文件夾”,選擇菜單“屬性窗口”,打開圖六的“屬性”窗口。
圖六
在圖六對話框中,我們可以配置許多重要的屬性,包括:
⑴ AllowDirectoryBrowsing:允許設(shè)定指定目錄的IIS目錄瀏覽屬性。這個設(shè)置項目相當(dāng)于IIS管理器中Web網(wǎng)站屬性對話框目錄設(shè)置頁的“目錄瀏覽”檢查框,可以設(shè)置為True或False。
⑵ AllowReadAccess:該屬性允許設(shè)定文件夾的IIS“讀取”屬性,可以設(shè)置成True或False。
⑶ AllowScriptSourceAccess:該屬性設(shè)置文件夾的IIS“腳本資源訪問”屬性。
⑷ AllowWriteAccess:該屬性設(shè)置文件夾的IIS“寫入”屬性。
⑸ ApplicationProtection:該屬性設(shè)置文件夾的IIS“應(yīng)用程序保護(hù)”屬性,可以設(shè)置成vsdapLow、vsdapMedium、vsdapHigh。
⑹ AppMappings:該屬性設(shè)置文件夾的IIS“應(yīng)用程序映射”屬性。
■ 設(shè)置其他IIS屬性
某些IIS配置屬性不能在Web安裝項目的屬性窗口中直接設(shè)置,包括目錄安全的配置(匿名訪問,基本驗證或Windows驗證)、自定義錯誤等。
但是,我們可以用其他辦法解決問題,其中一種很有效的辦法是在Windows安裝文件中采用“自定義操作”。如前所述,我們可以用“自定義操作”在安裝結(jié)束時運行一些代碼,完成安裝期間未能執(zhí)行的操作,自定義操作的代碼可以是DLL、執(zhí)行文件、腳本或程序集。
■ 安裝ASP.NET Web應(yīng)用
創(chuàng)建好Windows安裝文件(.msi文件)后,在目標(biāo)服務(wù)器上安裝ASP.NET應(yīng)用就很方便了,只要在Windows資源管理器中雙擊.msi文件就可以啟動安裝向?qū)В惭b向?qū)椭脩敉瓿烧麄安裝過程。安裝好ASP.NET應(yīng)用程序后,我們可以在控制面板的“添加或刪除程序”功能中看到該應(yīng)用程序,而且可以利用“添加或刪除應(yīng)用程序”功能隨時刪除已安裝的ASP.NET應(yīng)用。
九、VS.NET安裝項目 VS. 其他部署方案
如前所述,我們可以用下列方案之一來部署ASP.NET Web應(yīng)用:
⑴ XCOPY或VS.NET的“復(fù)制項目”功能。
⑵ VS.NET的Web安裝項目。
任何技術(shù)都有局限,用XCOPY和“復(fù)制項目”功能部署.NET應(yīng)用也不例外。一般地,它們只適用于比較簡單的、允許手工操作的場合,同時用于即時更新也很理想。但是,在某些場合,XCOPY不太適用,我們需要某種更加強大的部署方案,例如:
⑴ .NET應(yīng)用程序用到了一些COM組件,我們想要自動部署這些COM組件(而不想手工部署),必須在安裝期間完成這些COM組件的注冊。
⑵ 需要在遠(yuǎn)程計算機上把一個程序集預(yù)編譯成本機代碼。
⑶ 需要將一些程序集安裝到遠(yuǎn)程機器的Global Assembly Cache。
⑷ 需要將一個應(yīng)用程序安裝成Windows服務(wù)。
⑸ 打算創(chuàng)建桌面快捷方式、把程序加入到“添加或刪除程序”清單、創(chuàng)建“開始”菜單的快捷方式,等等。
在上面這些情況下,我們需要一種更加強大的部署方案,這就是VS.NET提供的Web部署項目。許多時候,實際使用某種部署方案的是最終用戶,最終用戶往往缺乏手工配置應(yīng)用所必需的技能,VS.NET的Web安裝項目提供了很容易使用的用戶界面,把安裝期間必須執(zhí)行的各種復(fù)雜的配置操作全部自動化。不僅如此,VS.NET的Web安裝項目還有下列優(yōu)勢:
⑴ 當(dāng)我們安裝一個應(yīng)用程序時,有關(guān)應(yīng)用的所有信息都被記錄在一個Windows安裝數(shù)據(jù)庫中。如果我們要刪除該應(yīng)用程序,系統(tǒng)會檢查安裝數(shù)據(jù)庫,確認(rèn)其他應(yīng)用程序不依賴于某些將要被刪除的組件,從而避免臭名昭著的DLL Hell問題。
⑵ 如果安裝失敗,可以執(zhí)行徹底的回退,從系統(tǒng)清除一切安裝痕跡。
結(jié)束語:在這篇文章中,我們探討了部署ASP.NET Web應(yīng)用程序的各種方案,包括XCOPY、VS.NET的“復(fù)制項目”功能,以及VS.NET的Web安裝項目,了解了各種部署方案的優(yōu)缺點及其適用場合。希望本文介紹的內(nèi)容對你有所幫助。