2013年6月13日 星期四

Publish ASP.NET MVC 4 App to IIS8

部署ASP.NET MVC 4 Web Application to IIS 8
Tools: Visual Studio 2012

第一步要以系統管理員身份執行Visual Studio 2012

image

Create a New Web Application to deploy

image

image

預設Internet 範本使用Entity Framework 5.0 Code First方式建立會員資料庫,我希望部署到Server 時,資料庫改用SQL Express。

預設Web.config檔案內,含連接字串如下:

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-demo-20130613150148;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-demo-20130613150148.mdf" providerName="System.Data.SqlClient" />
  </connectionStrings>

在Web.Release.config檔案加入:

<connectionStrings>
  <add name="DefaultConnection"
    connectionString="Data Source=.\sqlexpress;Initial Catalog=demodb;Integrated Security=True"
    xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>

image

切換到Relase Mode
image

Build Solution

Publish

image

image

image

publish到本機IIS試看看

image

image

Preview 沒問題,就按下Publish

image

成功之後,會自動啟動Browser,顯示網站首頁

image

檢視IIS wwwroot下網站的程式檔案都部署上來了,web.config檔案內包含的連接字串是Release版的,連到sqlexpress

image

試著註冊會員

image

發生錯誤,權限不足

image

檢視IIS MyMVCApp執行在DefaultAppPool

image

DefaultAppPool目前使用ApplocationPoolIdentity身份執行

image

使用SQL Server Management Studio連接到SQLExpress

image

新增login

image

設定登入名稱

image

授權dbcreator

image

回到Browser,就可以註冊了

image

輸入帳號密碼

image

網站便可登入

image

使用SQL Server Management Studio檢視DB已建立,UserProfile資料表中,含一筆資料

image

沒有留言:

總網頁瀏覽量