簡體   English   中英

將ASP MVC應用程序部署到運行IIS 7.5的Windows 2008服務器

[英]Deploying an ASP MVC application to Windows 2008 server running IIS 7.5

我一直在努力尋找有關如何做到這一點的一些可靠信息。 我發現的大部分信息都是從Visual Studio 20xx開始討論Web部署的,但我不確定這是否是首選方法。 我希望能夠“安裝”MVC網站/ Web應用程序進行分段,然后在測試/缺少修復周期后,進行另一次構建並將其安裝在生產環境中。 大家怎么樣這樣做? 文檔如此寬松和有限,這似乎很奇怪。 這不是所有ASP.NET開發公司都做的嗎? 有人可以向我解釋推出和更新Web應用程序到Win2008 IIS 7.5的最佳方法嗎? 基本上我正在尋找一個包裝精良的安裝程序。

發布網站的方法有多種。 解決方案取決於許多因素,例如您是在內部發布還是在外部發布。 如果要為第三方創建安裝以在自己的服務器上安裝,等等。

如果您有直接文件系統(即網絡共享)訪問您的Web服務器,並且您不關心具有單獨構建服務器等的正式構建過程,那么使用Visual Studio的內置Web發布功能是最簡單的方法。 您只需直接發布到網站虛擬目錄的文件系統即可。 這非常有效,並支持大多數開箱即用的場景。

但是,如果您是一個更大的組織並希望獲得更多控制權。 然后,您可以在服務器上安裝WebDeploy並使用WebDeploy代理從Visual Studio發布,盡管WebDeploy設置起來很棘手並且沒有很好的文檔記錄。 WebDeploy也可以在Visual Studio之外使用,並具有非常豐富的功能集。

有些人使用版本控制來部署到他們的站點。 他們進行構建,然后將其檢入版本控制,然后“獲取最新”進入服務器虛擬目錄。 這使他們能夠輕松回滾到以前的版本或時間點。

其他人使用構建和部署工具,如MSBuild,OctopusDeploy,Chuck Norris等......

還有一些人使用持續集成工具,這些工具可能會使用我已經提到過的一些工具。 CIC服務器,如TeamCity,CruiseControl.net等......

那里有大量的信息,還有很多方法可以做到這一點......因為很多方面都是個人選擇,取決於你的情況,我們無法確切地說“做這個”或“做那個”。

好的,我在遠程主機(Windows Server 2008 R2)和運行VS2013的客戶端之間進行了Web部署。 我找到了一個很棒的網站,有一個演練。

在server 2012上安裝和使用Web Deploy

這適用於Windows Server 2012,但也適用於Win 2008。

在我瀏覽完所有內容后,部署失敗並顯示錯誤:“無法加載文件或程序集'Microsoft.Web.Deployment,Version = 9.0.0.0 ......”

為解決該問題,我在運行VS 2013的計算機上下載並安裝了最新的Web Deploy軟件包。當時,最新版本為3.5:

Web部署3.5

這附帶了客戶端所需的依賴dll。 奇怪的是,我沒有必要在運行相同版本的VS 2013的家用機器上做這個部分,所以我不知道為什么在這個特殊情況下這是必要的。

完成所有這些后,我能夠以管理員身份遠程部署我的Web應用程序。 由於安全問題,我不建議在主機上為管理員設置Web部署,但我上面鏈接的演練顯示了如何為遠程連接創建用戶帳戶。

編輯:我還找到了一個很好的故障排除指南,幫助我解決了一個問題: Web部署故障排除

我們使用內置的Visual Studio Web發布 ,並將其與web.config轉換相結合,為每個環境部署適當的配置(設置,連接字符串等)。

設置完成后,就像選擇所需的發布配置文件一樣簡單,然后按“發布”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM