2013-04-16 190 views
2

通常,在webforms中,當您必須部署應用程序時,我們從Visual Studio 發佈,並將發佈的文件夾僅放在服務器(IIS)上。但是,在MVC Web應用程序中,它是如何完成的。在IIS 8.0上部署MVC 3.0 Web應用程序項目

它是否遵循相同的方式(僅在服務器上發佈文件夾)或其他方法。

我試過以下方法,但沒有得到任何結果。

  1. Web部署軟件包 - 要通過本教程後 - 在Web部署包教程下>http://pluralsight.com/training/players/PSODPlayer?author=scott-allen&name=mvc3-building-deploy&mode=live&clip=0&course=aspdotnet-mvc3-intro

,我發現瞭如何創建可在IIS管理工具來進行網絡部署包。後來我發現這個鏈接來幫助我一樣 - >

http://www.iis.net/learn/publish/using-web-deploy/building-a-web-deploy-package-from-visual-studio-2010

。但按照所有步驟後,我得到了這個錯誤 - > (見屏幕截圖)Error after Deployment 這種方法中缺失的步驟是什麼?

2. Add roles - Windows Server 2012 - turn certain features of ASP.NET 3.5 and ASP.NET 4.5 on. 

我遵循這個教程用於上述步驟 - >

http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-using-aspnet-35-and-aspnet-45

作爲每教程,我應該部署一個MVC 3.0應用,打開ASP.NET 3.5和ASP在「應用程序開發」選項卡下的.NET 4.5功能。在此之後,來部署應用程序,我應該在「高級設置」,彈出選擇.NET V2.0的應用程序池(見截圖) enter image description here

但即使在教程中,我得到了同樣的錯誤「以下在應用Server錯誤....

3. Publish under the "File System" Method. 

我們用鼠標右鍵單擊該項目並選擇‘發佈’和彈出對話框顯示部署的各種選項。在這裏我們選擇 - 「文件系統」(見屏幕截圖)enter image description here

我們發佈了這個項目,但又得到了同樣的錯誤。

問題/問題 - >

1.什麼是部署在IIS 8 MVC 3.0應用程序的正確充分證明方式。 ?

2.我們需要把服務器上的整體解決方案,並從那裏運行或以其他

3.我們是否缺少上述三種方法的一些步驟或一些命令

4。我們的要求是從本質上找到一種方法,只將已發佈的文件夾放到服務器上並運行,但它是如何在MVC中正常工作的(如Web表單)?

5.文件系統的方法(上述第3點)是一些東西,是爲Web表單通常做法,是最好什麼也別相同的MVC也是如此。

6.部署正在使用localhost,但通過創建虛擬目錄進行嘗試時,它仍然不起作用。

工作環境的Visual Studio 2012 - Web服務器的Windows Server 2012- IIS 8

需要幫助解決的困惑。

問候, Mangesh

+0

看起來你正在做的它是正確的(是的,你需要以與webforms相同的方式發佈你的網站),但是這個鏈接可以幫助你解決你的問題:http://www.iis.net/learn/get-started/whats-new-在-IIS-8/IIS-80-使用-ASPNET-35 - 和 - ASPNET-45#TOC301258515 – cheesemacfly

回答

7

我已經找到了一個完整的解決方案來部署Windows Server 2012在這裏使用IIS8的MVC 3.0應用程序的步驟是:

  1. 啓動Visual Studio和選擇運行IDE時「以管理員身份運行」選項。

  2. 更改您的Web.config以添加以下代碼行。

    <globalization culture="en-US"/> 
    

這保證了即使目標服務器有一些不同的設置,您提的這行代碼執行自己的設置。否則,你可能會得到問題,如 - 提交具有日期字段的表單,你可能無法提交的日期將被設置爲

01/01/01 :00:00:00:00 
  • 構建 - 遵循三個確定的步驟。
  • a。清潔溶液

    b。構建解決方案

    c。重新構建解決方案

    1. 如果您正在使用共享環境,請檢查您的解決方案。右鍵單擊項目解決方案並選擇發佈選項。 (ScreenShot)enter image description here

    2. 這會打開一個如下所示的對話框(截圖2)。這將向您顯示部署和其他一些設置的可能選項。

    在此屏幕上,您不需要做太多工作就可以自動設置當前發佈配置文件的默認設置。

    enter image description here

    下一頁截圖:

    點擊下一個標籤上,你會看到一堆選項,如下列:

    第一個選項會詢問您的發佈方法。他們在這四個選項:

    a。 Web部署

    b。 Web -deploy包

    c。文件系統

    d。 FTP

    e。 FPSE。

    我的發佈方法是「文件系統」。我還部署了使用Web-Dpeloy和Web-Deploy程序包的應用程序,但爲了本文的目的,我將堅持使用文件系統。

    下一個參數詢問你想要發佈文件夾的目標位置。這可以是硬盤上的本地位置或服務器上的遠程位置。我在服務器上選擇了一個遠程位置,在那裏我創建了一個發佈文件夾,在這裏發佈後我的所有文件都將放在這裏。

    目標網址是可選的。我已將它留空。 enter image description here

    讓我們繼續下一個屏幕快照。 enter image description here

    設置選項卡插上U以下選項:

    1. 配置:有在下拉兩種選擇 - 調試和發佈。選擇發佈選項。

    2. 確保你勾選了「發佈之前刪除所有現有文件」選項。這會在每次發佈項目之前清除所有現有文件。

    3. 這種發佈方式不支持數據庫發佈。因此,如果您在項目中創建一個,則不要將其用於發佈。在我的情況下,我用一個外部數據庫綁定到我的模型類,因此這種方法將工作。

    在下一屏幕截圖:您在發佈項目之前預覽您的設置。 enter image description here

    它會顯示在目標文件夾中發佈的文件/文件夾將駐留,它是要發佈的項目,並再次警告指出,數據庫將不會被髮表。

    點擊發布。

    檢查您的輸出窗口,因爲它將逐行顯示它將用於發佈的步驟。

    最後,它會顯示成功發佈項目的消息。

    下一步:轉到您的發佈文件將保存的位置。 截圖: 你應該得到這樣的事情:

    enter image description here

    這是您發佈的文件夾和文件。現在讓我們來運行IIS來運行網站。

    轉到IIS8並按照屏幕截圖右鍵點擊此選項。 (這個鏡頭可能因系統而異)。 enter image description here

    點擊添加網站,打開另一個對話框,如下圖。

    enter image description here

    進入您的網站的名稱,然後點擊頁面右側的 - 手側的「選擇」按鈕,這將如下打開另一個彈出。

    enter image description here

    選擇從這個下拉您適當的框架。由於我是一個MVC 3.0項目,我去了ASP.NET 4.0設置。 (請嘗試使用這些選項來了解哪些設置適合您。)

    繼續,輸入/瀏覽到您的解決方案所在的物理路徑。在我的情況下,截圖顯示了我發佈的所有文件的位置。 (有時爲了避免文件夾發生衝突,請創建一個單獨的文件夾並將其作爲您的物理位置輸入,並將文件從您發佈到新文件夾的文件夾中複製)

    將其餘條目保留原樣。如果某個應用程序已經在默認的-80端口上運行,則給一個新的端口。點擊確定。

    重新啓動您的IIS。轉到瀏覽器並輸入URL。

    這就是它! 您的MVC 3.0 Web應用程序已成功部署。

    感謝,

    Mangesh

    (PS - 請留下您的意見對任何事情是不明確的,如果你覺得它有用不要忘記+1 :))

    相關問題