Asp.net vnext的IIS部署

微軟前段時間推出asp.net vnext,自個也嘗試了一把,也寫了幾篇關於vnext特性的博客,以下。git

但一直有個困擾的問題,asp.net vnext如何在iis部署,由於整個目錄結構跟以前有了很大的不一樣,用f5直接運行啓動iis express很方便查看結果,但若是部署到線上,就要用到iis,以前一直沒找到合適的方案,非常鬱悶,終於在昨天搞到深夜將這個問題解決了,那本文就是講解如何經過vs2015部署vnext web項目。github

大體的方案是經過http://codedbeard.com/asp-net-5-0-deploy-to-local-iis/web

一、首先經過vs2015新建一個web項目shell

image

二、web站點項目右鍵屬性,修改Build和Debug屬性express

若是你的操做系統是64位的,在Application處Target KRE version屬性處選擇64位api

image

在bulid屬性處勾選"Produce outputs on build"瀏覽器

勾選此處的目的是爲了不瀏覽時出現Couldn't find package 'KRE-CLR-amd64.1.0.0-beta1'. Locations probed:問題asp.net

在Debug屬性處Debug target選擇webui

二、發佈站點操作系統

a)在web站點項目文件上右鍵屬性,發佈彈出以下對話框

image

b)connection處選擇file system ,具體以下圖,在這裏選擇一個文件夾位置輸出。

image

c)設置輸出,選擇KRE 版本,因爲本機是64位的,這裏選擇64位CLR

image

三、在iis上新建站點,TestIISDeploy,選擇物理路徑,這裏要注意目錄要深一層到wwwroot,不像之前直接是根目錄

image

到這裏,而後瀏覽站點,就會發現已經能夠了,昨天晚上我再發布的時候,會提示以下錯誤

image

而後選擇執行該站點目錄下的web.cmd(D:\Code\Web\publish\GaokaoWeb\web.cmd)文件,記得以管理員方式運行纔可,運行正常會彈出以下框

image

這樣在瀏覽器地址欄輸入以下地址便可:http://localhost/

image

 
另外上述須要kre支持,kre安裝方法以下:

初次使用要安裝k gen,安裝英文教程見此連接,或執行以下步驟,前提是vs2015已安裝。

          (1)打開vs2015,新建web項目

          (2)以管理員身份運行cmd,輸入以下命令,進行安裝kvm

powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/aspnet/Home/master/kvminstall.ps1'))

         (3)打開新的cmd窗口,輸入以下兩條命令,進行更新kvm的最新版本,執行完後重啓vs

set KRE_NUGET_API_URL=https://www.myget.org/F/aspnetvnext/api/v2

kvm upgrade

(4)打開控制檯輸入kvm list看安裝結果

image

相關文章
相關標籤/搜索