我已经阅读了很多与我相同的错误的帖子。我遇到的问题是我让它在我开发解决方案的同一台机器上运行。
我有 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 上运行?
当我从浏览器运行它时出现此错误
我的 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
......所以我想安装一些东西。
我还没有安装the .NET Core Windows Server Hosting bundle
。我不知道有没有必要。
我不知道我是否必须安装Kestrel
,或者如何安装它。
我假设在安装 Visual Studio 2017 时必须安装所有这些。
有什么我想念的想法吗?
谢谢