ASP.NET Core 站点未在 IIS 上运行,可以从命令行正常工作

问题描述 投票:0回答:2

我正在使用 ASP.NET Core 构建一个新的 Web 应用程序,并让它在 Visual Studio 中的调试中良好运行。

我使用滚动文件接收器添加了 Serilog,并且在 Visual Studio 中也运行良好。

然后我发布了该应用程序(直接从 VS 发布,也使用 AppVeyor),并将其复制到我的 Web 服务器,在 IIS 等中添加了一个站点。

现在我收到“500 - 内部服务器错误。”。

没有日志写入文件系统,甚至标准输出文件也没有。我已经添加了文件夹,我已经添加了 IIS_IUSRS 帐户和应用程序池帐户的写入权限。

仍然没有日志!

尝试从命令行运行该站点效果很好,并且使用 Serilog 进行日志记录也可以。

那么这与 IIS 有某种关系吗?但没有任何日志,很难知道问题出在哪里。有什么想法吗?

奖金信息:

我已在服务器上安装了 dotnet-sdk-2.1.200-win-x64 软件包。

web.config 文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\MySite.dll" stdoutLogEnabled="true" stdoutLogFile=".\app_data\stdout" />
  </system.webServer>
</configuration>
<!--ProjectGuid: B9DE9F34-1A9E-4D35-B6CE-74209A6CB9FA-->

网站根文件夹的权限(应用程序池用户相同):

app_data 权限(下面是日志和 stdout 文件夹),两个用户相同:

更新

我刚刚安装了 AspNetCore.2.0.7.RuntimePackageStore_x64 和 dotnet-runtime-2.0.7-win-x64 但它仍然无法工作。

c# asp.net-core iis-10
2个回答
0
投票

它最终成为我丢失的“托管捆绑安装程序”,这对于其他提到的软件包来说是不够的。安装最新的 2.0.8,然后重新启动就成功了。

现在 Serilog 也在记录。


0
投票

我也遇到过类似的错误,但我发现我需要更新的

Dotnet SDK Runtime Installer
版本2.0.6+

您可以在这里找到它(.NET Core Runtime 2.0.6 下载页面)

安装后重新启动服务器。

希望这对您有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.