1. 程式人生 > >在 Azure WebApps 中運行64位 Asp.net Core 應用

在 Azure WebApps 中運行64位 Asp.net Core 應用

需求 正常 mmu www. module .config 正在 external doc

作為微軟下一代的開源的跨平臺的開發框架, Asp.net core 正在吸引越來越多的開發者基於其構建現代 web 應用。

目前, Azure App Service 也實現了對 asp.net core 的支持。 用戶所開發的 ASP.NET Core Web 應用, 以與通常 Asp.net Web 應用同樣的方式部署到雲端後,便可以被順利執行。

但是,目前 Azure App Service 尚只支持32位的 Asp.net Core 運行時,即用戶的 Asp.net Core 應用在雲端是以一個32位進程來運行。 在大多數情況下,它可以支持用戶的 web 應用正常運行,但是,在某些場景下,用戶會有使用64位 Asp.net Core 運行時的需求,例如應用需使用超過 2GB 的用戶態虛擬內存空間,或應用需要加載64位的本地代碼,等等。 在這種情況下,我們可以考慮使用自定義上傳的 Asp.net Core 運行環境。

具體實現如下:

  1. 從微軟的 .Net Core 站點(https://www.microsoft.com/net/core#windows )下載 .Net Core SDK, 並安裝到一個64位的 Windows 本地機器中。
  2. 將安裝後的 dotnet 文件夾(默認路徑為C:\Program Files\dotnet )通過 FTP 上傳至 Azure App Service 目錄。例如/site/wwwroot/dotnet

技術分享

3.打開站點web.config文件,在aspNetCore節中,將processPath改為新上傳的dotnet.exe路徑並保存。

<system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="d:\home\site\wwwroot\dotnet\dotnet.exe" arguments=".\WebApplication1.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" />
  </system.webServer>

  4.重啟站點。

更多內容請點擊這裏查看。

在 Azure WebApps 中運行64位 Asp.net Core 應用