[英]Get HTTP 500 error hosting ASP.Net Core MVC app in IIS
我是 ASP.Net Core 的新手,並試圖在 IIS 中托管我的第一個簡單的 MVC 應用程序。 我已經安裝了 IIS 托管包; 使用 Visual Studio 將我的 MVC 項目發布到一個文件夾,然后創建了一個 IIS 網站,其物理路徑設置為發布的文件夾。 但是,當我使用 url http://localhost:5008/home/CallApi 對其進行測試時,出現 500 錯誤,提示“此頁面無效。本地主機當前無法處理此請求。”。 我可以從 VS 中運行 MVC 應用程序(selfhost,而不是通過 IIS,在不同的端口上),它在那里工作正常。 我在這里做錯了什么?
如果要將 ASP.Net Core MVC 應用程序部署到 IIS,則需要安裝 .NET Core 主機包,否則會出現“500 錯誤”。 如果您成功安裝了 .NET Core 主機包,您可以在 Modules 中找到 AspNetCoreModuleV2:
使用以下鏈接下載安裝程序:
添加站點后,您需要將 .NET CLR 版本設置為 No Managed Code:
有關在 Windows 上使用 IIS 托管 ASP.NET Core 的更多信息,您可以參考此鏈接:
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1
更新:
我建議您啟用查看 PII 日志,以便我們可以查看有關錯誤的更多詳細信息:
public void ConfigureServices(IServiceCollection services)
{
IdentityModelEventSource.ShowPII = true;
....
你可以參考這個鏈接,里面有類似的問題:
“InvalidOperationException:IDX20803:無法從以下位置獲取配置:'[PII is hidden]'”
對於那些有同樣問題的人,我發現我發現的設置指南中沒有提到對我來說是必需的步驟:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.