iis - Core 2.0 发布 IIS HTTP 错误 500.19 - 内部服务器错误

标签 iis asp.net-core visual-studio-2017 publish kestrel

我读了很多帖子都犯了同样的错误。我遇到的问题是我在开发解决方案的同一台机器上运行它。

我有 Windows 8.1 和 IIS 7.5。 Express 我在我的 IIS 上运行了几个 MVC Framework XXX 解决方案,我没有遇到任何问题。当我发布解决方案 Core 2.0 时出现问题...

我已经创建了一个基本的 Web Core 2.0 MVC 解决方案。与默认创建的项目相同。 (创建了一个 Core 2.0 MVC 并发布了它)。

我有 Visual Studio 2017,所以我安装了 SDK。

我在 IIS (inetpub/wwwroot) 中为其创建了一个站点,放入已发布的代码,并将应用程序池配置为运行“无托管代码”。我将端口设置为 5010。

当我从 cmd 运行项目时:dotnet core20.dll 它说它正在监听端口 5000,而不是端口 5010。

所以,我设置了端口 5000,但是当我从 cmd 运行它时它显示错误。

Microsft.AspNetCore.Server.Kestrel[0] Unable to bind to localhost:5000 on the IPv4 loopback interface: Error 4092 EACCES permission denied. Unabled to start Kestrel.

为什么我设置在5010端口却运行在5000端口?

当我从浏览器运行它时出现这个错误

enter image description here

我的 web.Config 是为发布而创建的基本 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=".\core20.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
  </system.webServer>
</configuration>
<!--ProjectGuid: 21dc60b6-a958-447d-8ed3-25a6195a06ea-->

On Windows Features turn on or off--> IIS Services--> Application Development Features,所有选项都选中

我的错误

我在 Core 2.0 Angular 应用程序中遇到了同样的问题...所以我想安装一些东西。

我还没有安装 .NET Core Windows Server 托管包。不知道有没有必要。

我不知道我是否必须安装 Kestrel,或者如何安装它。

我假设在安装 Visual Studio 2017 时必须安装所有这些。

知道我遗漏了什么吗?

谢谢

最佳答案

I have not installed the .NET Core Windows Server Hosting bundle. I do not know it is necessary.

这是你的问题。安装托管包。没有它,IIS 就不知道如何处理 ASP.NET Core 应用程序。特别是,您的错误是因为 <aspNetCore>标记不存在供 Web.config 使用,也没有该 bundle 。因此,虽然错误有点迟钝,但它在技术上告诉您问题出在哪里。

此外,安装 bundle 后,您必须重新启动服务器或完全停止并重新启动 IIS 服务(不是 iisreset):

> net stop was /y
> net start w3svc

最好完全重启服务器,如果可以的话,只是为了确保一切都是新鲜的,但启动和停止 Web 服务应该足以加载到 ASP.NET Core 模块中。

所有这些都包含在 documentation 中.

关于iis - Core 2.0 发布 IIS HTTP 错误 500.19 - 内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49613079/

相关文章:

IISWMSVC_STARTUP_UNABLE_TO_ACTIVATE_HWC

asp.net - 模拟的 UserManager 和 roleManager 方法返回 null

c# - 无法创建类型为 'DbContext' 的对象

iis - Microsoft Azure 中的 Windows Server 2012/IIS8 上的客户端证书身份验证收到 HTTP 403.16

iis - 如何在Windows XP上安装IIS Express 7.5?

asp.net - 413 请求实体太大 - Web API

c# - Visual Studio 2017 + Entity Framework + 身份 + mysql 不工作

c++ - 如何解决与 GCC/Clang 不同的 C++ 函数模板的 MSVC 处理(无法识别的模板定义)?

visual-studio-2017 - Visual Studio "15"预览版可以与 2015 一起安装吗?

asp.net - wcf 服务中的 System.ServiceModel.ServiceActivationException