ASP.NET Core 2.1 Preview 2 App 無法在 Azure 應用服務上執行
自從此版本發布以來,我一直在 Azure 上執行我的 ASP.NET Core 2.1 Preview-1 應用程序。我已經通過門戶安裝了 ASP.NET Core 執行時擴展,它執行良好。
現在微軟發布了 ASP.NET Core 2.1 Preview-2,我安裝了 SDK 的升級。更新了我的 Nuget 包,以便我擁有所有內容的 preview-2 版本。請參閱下面的我的 csproj 文件:
我還為我的應用程序從 Azure 應用程序服務中刪除了 ASP.NET Core 執行時擴展,該應用程序顯示 2.1 Preview-1。而是分別為 x86 和 x64 安裝了 ASP.NET Core 2.1 執行時——見下文:
編譯了應用程序並將其發佈到我的 Azure 應用程序服務,但出現錯誤。首先我得到了 502.5 錯誤。現在,我得到:
指定的 CGI 應用程序遇到錯誤,伺服器終止了程序。
我在這裡想念什麼?
更新:
正如答案所建議的,我將目標設置為 x86(為了安全起見)——見下文:
我刪除了擴展和單獨的 x86 和 x64 執行時間,只安裝了支持 ASP.NET Core 2.1 preview-2 的 x86——見下文:
我重新啟動應用程序幾次,我仍然得到 502.5。
然後我嘗試通過發出以下命令通過 CLI 命令行進行自我部署:
dotnet publish -c Release -r win10-x64我收到以下錯誤:
C:\Program Files\dotnet\sdk\2.1.300-preview2-008530\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(125,5):錯誤:RuntimeIdentifier 平台’win10-x64 ’ 和 PlatformTarget ‘x86’ 必須兼容。
這是否意味著我安裝了 x86 版本的 SDK,並且必須以 x86 為目標?
從 ASP.NET Core 2.0 到 2.1,我沒有遇到一半的麻煩!!!!
更新 2:剛剛
dotnet --info在 Kudu 控制台中執行。如果我沒看錯,說明我沒有正確的執行時間。更新 3:
更新 4:
我安裝了 x86 版本的 ASP.NET Core 2.1 Runtime——見下文:
當我
dotnet --info在 Kudu 控制台中執行時,我得到以下讓我感到困惑的資訊。我仍然沒有看到我期望看到的版本:
dotnet MyApp.dll當我點擊 URL 時,當我執行告訴我找不到正確版本的執行時時,我仍然在 Kudu 控制台中收到 502.5 和相同的消息。我將如何在那裡獲得正確的版本?我認為通過門戶安裝它就可以了。
我們已經設法使用“自包含”部署模式將 ASP.NET Core 2.1 RC1 webapp 發佈到 Azure 應用服務。
平台目標:任何 CPU
以下是我們的 .csproj 中的包引用:
<PackageReference Include="Microsoft.AspNetCore.App" /> <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.1.0-rc1-final" PrivateAssets="All" /> <PackageReference Include="Microsoft.AspNetCore.AzureAppServicesIntegration" Version="2.1.0-rc1-final" />
我為使其工作而採取的步驟:
- 刪除 2.1-preview1 ASP.NET Core 執行時擴展。
- 檢查應用程序設置以查看您是在 32 位還是 64 位下執行。
- 僅安裝匹配的(32 位或 64 位)ASP.NET Core 2.1 執行時。
- 重新啟動網路應用程序。
重新啟動很重要——在重新啟動之前 .NET Core 工具的版本是錯誤的,我也會收到 502.5 錯誤。
由於您已經安裝了 32 位和 64 位執行時,我會嘗試刪除您的應用程序不需要的執行時並重新啟動 Web 應用程序。







