【初碼乾貨】在Window Server 2016中使用Web Deploy方式發佈.NET Web應用的從新梳理

在學習和工做的過程當中,發現不少同事、朋友,在作.NET Web應用發佈的時候,依然在走 生成-複製到服務器 這樣的方式,稍微高級一點的,就是先發布到本地,再上傳到服務器html

這種方式不只效率低下,並且不易進行版本控制,程序稍微複雜一些,加上團隊協做,發佈就會出現各類不可預料的版本問題。web

正好這兩天在玩Azure和Windows Server 2016,詳見《【初碼乾貨】【Azure系列】一、再次感覺Azure,體驗Windows Server 2016並部署BlogEngine.NET》,而我在實際使用過程當中,也遇到過很多關於Web Deploy的坑,因此在這裏,將WebDeploy的完整配置和使用方法從新梳理一遍服務器

特別值得注意的是,雖然以Windows Server 2016做爲演示,但和在Windows Server 2012 R2裏面的步驟是徹底一致!app

下面是完整的步驟asp.net

一、在IIS裏面點擊獲取新的Web平臺組件學習

image

 

二、下載Web平臺組件並安裝測試

image

 

三、在其中搜索Web Deploy,找到3.5版本,並安裝.net

image

image

image

image

 

四、繼續搜索Web Deploy 3.6版本,並安裝3d

image

image[36]

image

image

安裝好以後,從新進入IIS,發現新增了一些功能版本控制

image

 

五、進入計算機管理,修改兩個用戶(WDeployAdmin和WDeployConfigWriter)的密碼屬性,包括設置永不過時以及設置一個固定密碼

image

image

image

image

image

image

image

 

六、回到IIS中,對Web Deploy的管理服務委派中的部分提供程序的用戶進行從新配置(使用剛纔設置的密碼)

image

image

image

image

image

這裏只列舉一個 backupSettings的配置,其餘的3個你們依葫蘆畫瓢就能夠了

七、添加一個IIS管理用戶

image

image

image

 

七、配置防火牆

咱們能夠看到,WebDeploy服務的默認服務端口是8172

image[176]

所以要在入口規則中添加一個8172端口的入站規則

默認WebDeploy程序會添加防火牆例外處理,可是若是仍是不行,則須要手工添加一下的。

好了,到目前爲止,Web Deploy的配置,就大功告成了,必定要重啓服務器

 

下面還須要進行測試(接着看,不要走,測試裏面有一步權限配置很是重要)

一、新建一個IIS站點

image

特別值得注意的是,這個IIS站點所在的目錄的文件夾,必定要有Local Service權限!不然在發佈的是否,會提示權限不正確!

image

 

二、在站點的IIS管理器權限裏面,添加剛纔新增IIS管理用戶

image

image

 

image

這裏有個指的注意的,IIS支持子站點的詳細權限配置,若有有子應用,能夠進行相似的配置

 

三、在Visual Studio 2015裏面新建一個asp.net web applicaiton空項目,進行測試

image

image

新建一個網頁

image

 

四、測試發佈

image

image

image

這裏的站點名稱,就是IIS的站點名稱,若是是子站點,就填寫

WebDeploy測試/子站點

image

在發佈以前,最好預覽一下,這是一個很好的發佈習慣!

image

最後點發布,會出現記錄

image

好了,看一下效果 http://webdeploytest.printhelloworld.com/


做者:張柔,發佈於  博客園  與  張柔的博客

轉載請註明出處,歡迎郵件交流:zhangrou@printhelloworld.com,或者加QQ羣:11444444

相關文章
相關標籤/搜索