近日,準備把MVC建了一個新的測試網站部署到IIS上面,結果沒想到出現了一系列的問題和錯誤,準備記錄一下。
第一個問題,就是如何將MVC的網站部署到IIS上去?
現在我的系統是Windows 7,IIS也是7.0的版本,一開始部署的時候,還是按照.NET 2.0的方式部署,選擇的是經典的模式,結果錯誤頁面就出現了。
這張圖是一開始按照原有的習慣部署.NET2.0的方式部署的,大家仔細看那個應用程式集區,選擇的是自己建立的,而且是傳統模式
下面這張,就是具體的錯誤頁面了:
然後就在g.cn上面搜尋一下出現問題的原因,結果發現在IIS 7.0下面部署起來超級簡單的,比較麻煩的是IIS 6.0的部署,在這裡就不贅述了,現提供一位園友的解決方案。如何在IIS6.0部署ASP.NET MVC的網站。
我只是簡單的更改了一下應用程式集區,用了預設的DefaultAppPool就可以了,不過下面又報出了其他的錯誤了。見圖:
的錯誤資訊提示,應該能猜到是資料庫的使用者權限問題,這個程式的資料庫我是用的SqlServer Express,簡單的說,就是在VS裡面建立的資料庫檔案,結果就出現這樣的問題,可是又不想把資料庫檔案遷移到SqlServer 中去,那就接著找答案。結果被g.cn帶到了msdn論壇上去了,裡面全是英文的問題描述以及問題解答,那就耐著性子逐一看完了,也按照上面的提示去做了,有說給檔案加入Network Service使用者權限的,等等說法,結果沒有一個正確的。就在這個時候,看到了一位國外的大俠,在web.config中,加入這句<identity impersonate="True" userName=”SystemUserName” passWord=”Systempassword” >試試。結果正確的網站就映入眼帘了。
就這樣成功的把MVC開發的網站部署到IIS上面去了。
參考資料:
http://social.msdn.microsoft.com/forums/en-US/sqldatabaseengine/thread/527bf46a-b3fe-4ae6-8b41-eb40024399c8/
http://www.cnblogs.com/deafcat/archive/2009/03/03/1401966.html