簡體   English   中英

如何配置MVC6應用程序在IIS上工作?

[英]How to configure an MVC6 app to work on IIS?

所以我在Visual Studio 2015中構建一個MVC6應用程序,並設法解決大部分問題,但是,我還沒有完成部署。

在MVC4(之前我使用過的)中,我們的進程*被發布到一個文件夾,然后在IIS中設置網站(右鍵單擊Sites - > Add Website )。

  • 實際上,我們的流程是在IIS和TeamCity中設置的,但不適用於像這樣的測試應用程序:)。

我遵循了這個過程,顯然設置IIS網站並發布到正確的文件夾是微不足道的......但這對我來說實際上並不適用。

我們在Windows Server 2012上運行IIS 8,並且我們在服務器上安裝了.Net 4.6運行時。

以下步驟對我有用,應該可以幫助您在IIS上托管項目。

使用Visual Studio 2015 Preview作為IDE,

  1. 創建一個ASP .NET 5 Starter App。
  2. 檢查它是否在IIS外部工作。
  3. 完成后,發布應用程序。 在此示例中,我選擇了位置C:\\PublishWebApp

    3.1。 發布應用程序時,請確保您具有:

    • 禁用預編譯
    • 選擇amd64

      (見下圖)

發布設置屏幕截圖

  1. 在成功發布,進入C:\\PublishWebApp 。你應該看到的文件夾approotwwwroot內。
  2. 現在打開IIS管理器(我假設您啟用了ASP .NET 4.5功能)
  3. 創建一個新網站。

    6.1:選擇wwwrooot文件夾作為網站的物理路徑。 在此示例中,它是C:\\PublishWebApp\\wwwroot

  4. 檢查網站,看它是否正常工作。 如果您遇到任何錯誤,請在此處發布。

如果在上圖所示的“發布Web設置”窗口中勾選了預編譯選項,則必須執行此操作

  1. 轉到已發布的Web應用程序的wwwroot文件夾。 在此示例中,它是C:\\PublishWebApp\\wwwroot
  2. 找到web.config
  3. 在已發布應用packages文件夾中, approot文件夾中有一個packages文件夾,其中應包含一個以應用程序命名的文件夾,下面是該版本的文件夾。 在該文件夾中應該是名為root的文件夾。 web.config ,將密鑰kre-app-base的值設置為root文件夾。 供參考,請參閱下面的代碼行。 在此示例中,應用程序名稱為WebApplication10。

     <add key="kre-app-base" value="..\\approot\\packages\\WebApplication10\\1.0.0\\root" /> 

我花了幾個小時調試問題,最后得到了它的工作,步驟:

1)使用visual studio將MVC6應用程序發布到文件系統中,確保在我的情況下選擇正確的DNX目標版本為dnx-clr-win-x64.1.0.0-rc1-update1。

在輸出文件夾中將“wwwroot”文件夾映射到IIS中的應用程序(不要將其映射到應用程序,只有IIS中的ROOT應用程序與DNX一起使用,例如“默認網站”)。

我花了一天時間試圖讓這個工作。 我發現這里 (通過GuardRex搜索帖子)非常寶貴,完成了接受的答案給出的步驟,這是它的開始。

幾乎如果您嘗試將應用程序添加到站點,則需要在鏈接中詳細說明需要解決方法和額外配置。

對於初學者:

1)確保您已經安裝了HttpPlatform處理器這里

2)似乎是顯而易見的,但要確保.net5已安裝在服務器上的位置

我知道如果你要在一個站點上添加一個應用程序,但是在每個人都應該注意的那一刻,部署過程需要一些陷阱和急需的改進。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM