:(哎呀。 500内部服务器错误 启动应用程序时发生错误。
当我向我的asp.net核心应用程序添加数据库功能并将其部署到iis时,出现了此消息。当我在Visual Studio中开发它时,一切都很顺利。但部署后,出现此错误消息。
我尝试使用dotnet myapp.dll
在部署文件夹中运行我的应用,发现它运行良好。问题可能与iis有关。我试图将<compilation debug="true">..</compilation>
添加到web.config,但它似乎没用。实际上是什么问题,或者有没有其他方法可以查看详细的错误信息以帮助找出发生了什么?
答案 0 :(得分:36)
更改stdoutLogEnabled =&#34; false&#34;为true,然后检查stdoutLogFile =&#34;。\ logs \ stdout&#34;中的日志。那里的错误可能会告诉你一些事情。
检查您是否使用ASPNETCORE_ENVIRONMENT环境变量设置了正确的环境名称,因此请使用连接字符串等正确的设置。默认情况下,您的计算机上有&#34;开发&#34;环境。
您可以使用Error Handling middlewares来显示
等异常app.UseDeveloperExceptionPage();
答案 1 :(得分:5)
在我的情况下,我得到了这个,因为我实际上没有在我运行它的Windows服务器上安装最新的'DotNetCore.2.0.0-WindowsHosting.exe'所以它在我的本地工作正常机器在调试和错误五hundy'ing在服务器上。
我还有其他非常重要的问题来解决升级问题......如果可以,我建议你避免使用它。
答案 2 :(得分:5)
Mark333在下面的评论解决了我的问题。
报价以方便阅读:
“我正在使用Visual Studio提供的常规发布。而且,我只是 发现使用最新版本的Hosting Bundle可以修复 问题。对此+1 microsoft.com/net/download/dotnet-core/runtime-2.1.0-rc1“
由于我的应用程序较旧,因此我必须安装1.1版,但Hosting Bundle对其进行了修复。以我为例,我们为官方环境部署了一个Docker映像,但是当我想在本地进行一些测试时,我将其发布并让我的本地IIS为它提供服务。
答案 3 :(得分:2)
我有同样的问题。
我的问题是我与db的连接字符串未在appsettings.production.json中设置
内部服务器错误500是模糊的错误消息。
更改stdoutLogEnabled = true对我没有任何作用,所以我没有看到有关该错误的任何信息。
答案 4 :(得分:2)
我的问题已解决,最新安装了.netcore:https://dotnet.microsoft.com/download/thank-you/dotnet-runtime-2.2.2-windows-hosting-bundle-installer
答案 5 :(得分:1)
我在Windows 2008 R2 Standard计算机上安装了DotNetCore.2.0.5-WindowsHosting.exe
,遇到了相同的http 500错误。记录没有帮助(生成空白日志 - 事件查看器日志是通用ErrorCode = 0x80070002
)
我必须做两件事来解决我的问题:
答案 6 :(得分:0)
我遇到了这个问题。问题是由于我的本地Sql Server实例。不允许远程连接。因此,我手动重新启动了SQL实例,并且我的App重新正常运行了。
答案 7 :(得分:0)
在执行AWS ec2实例引导时使用Chocolatey安装dotnetcore-windowshosting之后,我遇到了类似的问题。
当我检查IIS模块时,缺少AspNetCoreModule。
这解决了我的问题。 https://github.com/aspnet/IISIntegration/issues/434
我必须卸载Chocolatey软件包,重新启动计算机,然后再次安装。
希望这会有所帮助!
答案 8 :(得分:0)
确保应用程序池对您的应用程序所在的文件夹具有权限。
答案 9 :(得分:0)
我强烈推荐一篇名为“配置 IIS、ASP.NET 和 SQL Server”的文章。 我按照那里描述的步骤操作,我的 asp.net 核心应用程序现在与我的 SQL 数据库通信(在发布到 IIS 之后):
https://www.codeproject.com/Articles/674930/Configuring-IIS-ASP-NET-and-SQL-Server